您的位置:首页 > 编程语言 > Java开发

JAVA正则表达式

2017-08-09 11:24 85 查看
JAVA中的正则表达式

预定义字符

\d 匹配0 - 9 的任何字符

\D 匹配非数字

\s 匹配所以空白字符 包括空格 制表符 回车符

\S 匹配所以的非空白字符

\w 匹配所有的单词字符 包括0-9 所有的数组 26 个英文字母 和下划线

\W 匹配所以非单位字符

在使用replaceAll replaceFirst split 等函数时可以使用正则表达式。更方便编码

一些常用的正则表达式

//该正则表达式表示包含任意多个英文字母或者空格。
String pattern1 = "^[a-zA-Z| ]*$";
//替换, 将字符串中的所有连续空格替换成一个空格
replaceAll("\\s{2,}", " "
//将字符串中第一个连续的空格替换成一个空格
replaceFirst("\\s{2,}", " "
//分割字符串,按空格分割,多个连续的空格当作一个空格
String[] ss = str.split("\\s{1,}");
//限制分割后的数组的大小
str.split("\\s{1,}", 3)
1. 验证中文英文
/^[\u4e00-\u9fa5a-zA-Z]/
2.验证手机号
String  number = "0?(13|14|15|18)[0-9]{9}";
3.验证qq号
String qq = "[1-9]([0-9]{5,11})";
4.验证邮箱
String email = "\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}";
5.验证身份证
String IdCard="\\d{17}[\\d|x]|\\d{15}";
6.验证用户名
String userName="[A-Za-z0-9_\\-\\u4e00-\\u9fa5]+";


下面是使用正则实现的用户注册js检验

function checkInput(){
var name=document.getElementById("name").value;
var num=document.getElementById("num").value;
var email=document.getElementById("email").value;
var area=document.getElementById("area").value;
//判断用户名
if(name==null||name==""){
alert("请输入用户名!");
document.getElementById
4000
("name").focus();
return false;
}
var myname=/^[\u4e00-\u9fa5a-zA-Z]/;
if(!myname.test(name)){
alert("请输入中文或者英文用户名!");
document.getElementById("name").focus();
return false;
}
if(num.length==0)
{
alert("请输入手机号码!");
document.getElementById("num").focus();
return false;
}
if(num.length!=11)
{
alert("请输入11位的手机号码!");
document.getElementById("num").focus();
return false;
}

var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
if(!myreg.test(num))
{
alert("请输入有效的手机号码!");
document.getElementById("num").focus();
return false;
}
//邮箱
var  myemail =/\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/;
if(!myemail.test(email)){
alert("请输入合法邮箱地址");
document.getElementById("email").focus();
return false;
}
//区域
if(area==null||area==""){
alert("请输入所在区域!");
document.getElementById("area").focus();
return false;
}
}


关于正则表达式,根据不同的需求会有不同的表达,这里有一个正则表达生成的网站,能生成相关代码,很方便 正则表达式在线测试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: