常用的正则表达式以及在页面中的应用
一、常用的正则表达式
1、匹配所有的正数:^[0-9]+$
2、匹配所有的小数:^\-?[0-9]*\.?[0-9]*$
3、匹配所有的整数:^\-?[0-9]+$
4、匹配中文字符串: [\u4e00-\u9fa5]*
5、匹配Email邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
6、匹配中国手机号码:(86)*0*13\d{9}
7、匹配中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}
8、匹配中国邮政编码:[1-9]{1}(\d+){5}
9、匹配中国身份证号码:\d{18}|\d{15}
10、提取信息中的任何数字:(-?\d*)(\.\d+)?
11、匹配HTML标记:/<(.*)>.*<\/\1>|<(.*) \/>/
12、匹配正整数:^[1-9]\d*$
13、匹配负整数:^-[1-9]\d*$
14、匹配整数:^-?[1-9]\d*$
15、匹配非负整数(正整数+0):^[1-9]\d*|0$
16、匹配非正整数(负整数+0):^-[1-9]\d*|0$
17、匹配正浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
18、匹配负浮点数:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$
19、匹配浮点数:^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$
20、匹配非负浮点数(正浮点数+0):^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$
21、匹配非正浮点数(负浮点数+0):^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$
22、匹配由26个英文字母组成的字符串:^[A-Za-z]+$
23、匹配由26个英文字母的大写组成的字符串:^[A-Z]+$
24、匹配由26个英文字母的小写组成的字符串:^[a-z]+$
25、匹配由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
26、匹配由数字、26个英文字母或者下划线组成的字符串:^\w+$
27、匹配ip地址:\d+\.\d+\.\d+\.\d+
28、匹配腾讯QQ号:[1-9][0-9]{4,}
29、匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
二、应用
Web页面:
<asp:RegularExpressionValidator ID="revLinkPWD" runat="server" ControlToValidate="控件ID" Display="Dynamic" ErrorMessage="错误提示"
ValidationExpression="^[A-Za-z0-9]+$"></asp:RegularExpressionValidator>
JS代码:
function CheckEmail(){ var re = /\w@\w*\.\w/; if (!re.test(document.getElementById("txtEmail").value)){ document.getElementById('lblEmail').innerText = "请输入正确的邮箱地址!"; return false; }
}
Winform页面:
if(!Regex.Match(this.txtEmail.Text,@" \d{15}|\d{18}").Success) {
this.lblEmail.Text = "请输入正确的身份证号码!"; return; }