正则表达式⼤全-匹配中英⽂、字母和数字
在做项⽬的过程中,使⽤正则表达式来匹配⼀段⽂本中的特定种类字符,是⽐较常⽤的⼀种⽅式,下⾯是对常⽤的正则匹配做了⼀个归纳整理。
匹配中⽂:[\u4e00-\u9fa5]
英⽂字母:[a-zA-Z]
数字:[0-9]
匹配中⽂,英⽂字母和数字及_:
^[\u4e00-\u9fa5_a-zA-Z0-9]+$
同时判断输⼊长度:
[\u4e00-\u9fa5_a-zA-Z0-9_]{4,10}
^[\w\u4E00-\u9FA5\uF900-\uFA2D]*$ 1、⼀个正则表达式,只含有汉字、数字、字母、下划线不能以下划线开头和结尾:
^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$其中:
^与字符串开始的地⽅匹配
(?!_) 不能以_开头
(?!.*?_$) 不能以_结尾
[a-zA-Z0-9_\u4e00-\u9fa5]+ ⾄少⼀个汉字、数字、字母、下划线
$ 与字符串结束的地⽅匹配
放在程序⾥前⾯加@,否则需要\\进⾏转义 "^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$"
(或者:"^(?!_)\w*(?
2、只含有汉字、数字、字母、下划线,下划线位置不限:
^[a-zA-Z0-9_\u4e00-\u9fa5]+$
3、由数字、26个英⽂字母或者下划线组成的字符串
^\w+$
4、2~4个汉字
"^[\u4E00-\u9FA5]{2,4}$";
5、
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$
⽤:(Abc)+ 来分析:XYZAbcAbcAbcXYZAbcAb
XYZAbcAbcAbcXYZAbcAb6、
[^\u4E00-\u9FA50-9a-zA-Z_]
34555#5' -->34555#5'
publicbool RegexName(string str)
{
bool flag=Regex.IsMatch(str,@"^[a-zA-Z0-9_\u4e00-\u9fa5]+$");
returnflag;
}
Regex reg=new Regex("^[a-zA-Z_0-9]+$");
if(reg.IsMatch(s))
{
\\符合规则
regex匹配}
}
else
{
\\存在⾮法字符
}
最长不得超过7个汉字,或14个字节(数字,字母和下划线)正则表达式
^[\u4e00-\u9fa5]{1,7}$|^[\dA-Za-z_]{1,14}$
常⽤正则表达式⼤全!
(例如:匹配中⽂、匹配html)
匹配中⽂字符的正则表达式: [u4e00-u9fa5]
评注:匹配中⽂还真是个头疼的事,有了这个表达式就好办了
匹配双字节字符(包括汉字在内):[^x00-xff]
评注:可以⽤来计算字符串的长度(⼀个双字节字符长度计2,ASCII字符计1)
匹配空⽩⾏的正则表达式:ns*r
评注:可以⽤来删除空⽩⾏
匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?|<.*? />
评注:⽹上流传的版本太糟糕,上⾯这个也仅仅能匹配部分,对于复杂的嵌套标记依旧⽆能为⼒
匹配⾸尾空⽩字符的正则表达式:^s*|s*$
评注:可以⽤来删除⾏⾸⾏尾的空⽩字符(包括空格、制表符、换页符等等),⾮常有⽤的表达式
匹配Email地址的正则表达式:^[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$评注:表单验证时很实⽤
⼿机号:^((13[0-9])|(14[0-9])|(15[0-9])|(17[0-9])|(18[0-9]))\d{8}$
⾝份证:(^\d{15}$)|(^\d{17}([0-9]|X|x)$)
⽤正则表达式限制只能输⼊数字和英⽂:οnkeyup="place(/[W]/g,')
"onbeforepaste="clipboardData.setData('text',Data('text').replace(/[^d]/g,'
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论