常用的正则表达式(一)

来源:互联网 发布:网络销售做什么 编辑:程序博客网 时间:2024/05/21 17:22

在《正则指引》的附录看到了这个列表,很有用,拿来分享一下。

 

#在日常开发中,需要使用正则表达式解决的各种问题经常是固定的,重复的,所以这里列一些正则表达式供查阅
#除非特殊说明,否则一定使用的是ASCII匹配规则
#如果将正则表达式用于检证,一般应该在表达式首尾加上\A和\z;如果需要将其用于提取,应该在首位分别加上对应的断言。

#整数

#举例

1024
89
10

#正则表达式

[0-9]+
#如果用于数据提取,不需要添加断言


#十六进制数

#举例

4e00
9F
A3D6

#正则表达式
[0-9a-fA-F]+


#MD5字符串
#举例

C37B58C783456BF879C3DD5C519195A2
44912ED4AD09F0D2CA5066A16209F717

#正则表达式
[0-9a-fA-F]{32}

#常见的MD5字符串由32位十六进制数构成
#如果用于数据提取,还应该在首尾添加断言,保证之前和之后不能出现十六进制字符,
#也就是在表达式开头加上
(?<![0-9a-fA-F])
#在末尾加上
(?![0-9a-fA-F])

#浮点数

#举例

+3.14
+0.07
.7
3.6
-3.14
-12

#正则表达式
(+?([0-9]+|[0-9]+\.[0-9]+|\.[0-9]+)|-?([0-9]+|[0-9]+\.[0-9]+))
#浮点数包括整数部分,小数点,小数部分,分别由\d+ ,\. ,\d+ 匹配,单独来看它们都不一定要出现,
#但不可能三个部分都不出现,所以用多选结构 ([0-9]+|[0-9]+\.[0-9]+|\.[0-9]+) 表示。
#另外,之前可能出现符号,如果出现的是+,则各种形式都没有问题,
#如果出现的-,一般不会容许出现-.7之类的写法,所以还需要用一个多选结构

#如果用于数据提取,还应该在首尾添加断言。
#一般来说判断之前的字符不是点号,之后的字符一般不能是点号,
#但如果是句号,则它之后不能是其他数字字符,这样就可以避免错误匹配2010.12.10之类的数据。
#所以要在表达式开头加上
(?<!.)
#在末尾加上
(?!.[0-9])

0 0
原创粉丝点击