日期:2014-05-16  浏览次数:20387 次

求一个匹配数字及特定单词的正则式
要实现的是内容可以包含 数字或 INT、DOUBLE这两个单词

如:123INT,1INT87,INTDOUBLE1 等可能匹配
而:123ITN 这样的不匹配

^[\d\bINT\b\bDOUBLE\b]{1,100}$
这样写只是判断数字及以I D开关的包含 INTDOUBLE这几个字母的单词

------解决方案--------------------
^(\d
------解决方案--------------------
\bINT\b
------解决方案--------------------
\bDOUBLE\b){1,100}$

------解决方案--------------------
常用的正则表达式集锦
验证数字:^[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]*$ 
验证长度为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-./?%&=]*)?$ ; 
验证电话号码:^(\(\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。

以下是网上找的:

验证非负整数(正整数 + 0)  ^\d+$
验证非正整数(负整数 + 0)  ^((-\d+)
------解决方案--------------------
(0+))$
整数:^-?\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+)?

正则表达式用于字符串处理、表单验证等场合,实用高效,Movable Type的搜索功能中也可以使用,以远高效于简单逻辑关系的关键字快速定位到站点内的某一文章。下面是DRL的兄弟整理了一些常用的表达式,需要用之时查阅一时,强胜于啥都需要时才另外开始想。
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了
匹配双字节字符(包括汉字在内):[^\x00-\xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
匹配空白行的正则表达式:\n\s*\r
评注:可以用来删除空白行
匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>
------解决方案--------------------
<.*? />
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力
匹配首尾空白字符的正则表达式:^\s*
------解决方案--------------------
\s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式
匹配Email地址的正则表达式:^\w+((-\w+)
------解决方案--------------------
(\.\w+))*\@[A-Za-z