正则表达式

验证数字的正则表达式
验证数字:^[0-9]*$
验证n位的数字:^\d{n}$
验证至少n位数字:^\d{n,}$
验证m-n位的数字:^\d{m,n}$
验证零和非零开头的数字:^(0|[1-9][0-9]*)$
验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
验证非零的正整数:^\+?[1-9][0-9]*$
验证非零的负整数:^\-[1-9][0-9]*$
验证非负整数(正整数 + 0) ^\d+$
验证非正整数(负整数 + 0) ^((-\d+)|(0+))$
验证长度为3的字符:^.{3}$
验证由26个英文字母组成的字符串:^[A-Za-z]+$
验证由26个大写英文字母组成的字符串:^[A-Z]+$
验证由26个小写英文字母组成的字符串:^[a-z]+$
验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
验证由数字、26个英文字母或者下划线组成的字符串:^\w+$
验证用户密码:^[a-zA-Z]\w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线
验证是否含有 ^%&',;=?$\" 等字符:[^%&',;=?$\x22]+
验证汉字:^[\u4e00-\u9fa5],{0,}$
验证Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
验证InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
验证电话号码:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:--正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
验证身份证号(15位或18位数字):^\d{15}|\d{}18$
验证一年的12个月:^(0?[1-9]|1[0-2])$ 正确格式为:“01”-“09”和“1”“12”
验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$ 正确格式为:01、09和1、31。
整数:^-?\d+$
非负浮点数(正浮点数 + 0):^\d+(\.\d+)?$
浮点数 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮点数(负浮点数 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$
负浮点数 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮点数 ^(-?\d+)(\.\d+)?

对于正则表达式,现在使用的越来越多。感觉它在验证方面和搜索方面确实方便。所以平时对于一些常用的验证表达式记录了下来。以下是ActionScript中常用的表达式。汇总如下:
1.匹配正整数:
/^[1-9]\d*$/
2.匹配负整数:
/^-[1-9]\d*$/
3.匹配浮点数:
/^-?(([1-9]\d|0))\.\d*$/
4.匹配二进制数字:
/^([0|1]{4}\s)*([0|1]{4})$/
5.匹配八进制数字:
/^0[1-7][0-7]*$]
6.匹配十六进制数字:
/^0x[0-9][A-F]*$/
7.匹配中国人姓名:通常由2到4个汉字组成。使用Unicode编码
/^[\u4e00-\u9fa5][2,4]$/
8.匹配QQ号:
/^[1-9][0-9]{4,9}$/
9.匹配日期:
中国习惯日期:
/^[19|20]\d{2}年(0[1-9]|(1(0|1|2)))月(0[1-9]|((1|2)\d))|(3(0|1)))日$/
西方习惯日期:
/^(0[1-9]|(1(0|1|2)))\/(0[1-9]|((1|2)\d)|(3(0|1)))\/(19|20)\d{2}$/
10.匹配身份证:
/(^\d{15}$)|(^\d{17}([0-9]|x)$)/i
11.匹配邮政编码:
/^[1-9][0-9]{5}$/
12.匹配电话号码:
/^\d{3,4}\-\d{7,8}$/
13.匹配手机号码:
/^(13|15|18)\d{9}$/
14.匹配电子邮箱:
/^[a-z0-9][_.a-z0-9]*@([a-z0-9][_.a-z0-9]*\.)+[a-z]{2,6}$/i
15.匹配货币:
/^\d{0,3}(,\d{3}){0,}\.\d{2}$/
16.匹配IPv4地址:
/^((\d{1,2}|1\d{2}|2[0-4]\d{1}|25[0-5])\.){3}(\d{1,2}|1\d{2}|2[0-4]\d{1}|25[0-5])$/
16.匹配颜色:
/^\#(([0-9|A-F]){6})|(([0-9|A-F]){8})$/i

<?xml version="1.0" encoding="utf-8"?> 
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
xmlns:s="library://ns.adobe.com/flex/spark" 
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> 
<fx:Declarations> 
<!-- Place non-visual elements (e.g., services, value objects) here --> 
</fx:Declarations> 
<fx:Script> 
<![CDATA[ 
import mx.controls.Alert; 
public function check(event:Event):void{ 
var name:String=this.username.text; 
var password:String=this.password.text; 
var birthday:String=this.birthday.text; 
var reg1:String=this.reg1.text; 
//匹配日期 
var pattern:RegExp=new RegExp("\\d{4}-\\d{2}-\\d{2}"); 
var pattern2:RegExp=new RegExp("\\w{4}"); 
//匹配汉字 
var pattern3:RegExp=new RegExp("^[a-zA-Z0-9]+$"); 
//匹配汉字 
var pattern4:RegExp=new RegExp("[\u4e00-\u9fa5]"); 
//匹配邮箱 
var pattern5:RegExp=new RegExp("^\\w+@\\w+\\.\\w+$"); 
// if(pattern.test(birthday)){ 
// Alert.show("邮箱格式正确"); 
// } 
if(pattern4.test(reg1)){ 
Alert.show("格式正确"); 
}else{ 
Alert.show("格式有误"); 
} 
} 
]]> 
</fx:Script> 
<s:Label x="136" y="42" text="用户名" /> 
<s:TextInput x="180" y="42" id="username"/> 
<s:Label x="148" y="103" text="密码"/> 
<s:TextInput x="180" y="93" id="password"/> 
<s:Label x="149" y="146" text="生日" /> 
<s:TextInput x="180" y="135" id="birthday" text="1989-12-25"/> 
<s:Label x="124" y="193" text="测试字符" /> 
<s:TextInput x="180" y="183" id="reg1" /> 
<s:Button x="180" y="232" label="登录" click="check(event)"/> 
</s:Application> 

 

posted @ 2013-09-17 16:54  牧之丨  阅读(1183)  评论(0编辑  收藏  举报