Spiga

串(七):常用正则表达式

2012-05-06 14:54:02

"\d+$" //非负整数(正整数 + 0) "[0-9][1-9][0-9]$" //正整数 "((-\d+)|(0+))$" //非正整数(负整数 + 0) "-[0-9][1-9][0-9]$" //负整数 "-?\d+$" //整数 "\d+(.\d+)?$" //非负浮点数(正浮点数 + 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+)?)|(0+(.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+)?$" //浮点数 "[A-Za-z]+$" //由26个英文字母组成的字符串 "[A-Z]+$" //由26个英文字母的大写组成的字符串 "[a-z]+$" //由26个英文字母的小写组成的字符串 "[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串 "\w+$" //由数字、26个英文字母或者下划线组成的字符串 "[a-zA-z]+://(\w+(-\w+))(.(\w+(-\w+)))(?\S)?$" //url /(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-((0-2)|(3[0|1]))$/ // 年-月-日 /((0([1-9]{1}))|(1[1|2]))/((0-2)|(3[0|1]))/(d{2}|d{4})$/ // 月/日/年 "^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$" //Email "(d+-)?(d{4}-?d{7}|d{3}-?d{8}|d{7,8})(-d+)?" //电话号码 "(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$" //IP地址

YYYY-MM-DD基本上把闰年和2月等的情况都考虑进去了 ^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$

图片 src[>]*[/].(?:jpg|bmp|gif)(?:"|') 中文 ([\u4e00-\u9fa5]+|[a-zA-Z0-9]+)$ 网址 "<a.+?href='""(?!mailto:)(?>foundAnchor>['"">]+?)[^>]*?>"

匹配中文字符的正则表达式: [\u4e00-\u9fa5]

匹配双字节字符(包括汉字在内):[^\x00-\xff]

匹配空行的正则表达式:\n[\s| ]*\r

匹配HTML标记的正则表达式:/<(.)>.</\1>|<(.*) />/

匹配首尾空格的正则表达式:(^\s*)|(\s*$)(像C#的trim方法)

匹配Email地址的正则表达式:\w+([-+.]\w+)@\w+([-.]\w+).\w+([-.]\w+)*

匹配网址URL的正则表达式:[http://([/w-]+/.)+[/w-]+(//w+[/w-]+(/[/w)- ./?%&=]*)?