正则表达式一
无疑正则表达式是强大无比的,他可以用的地方很多,快速搜索,内容限定,电话邮箱合格检查等等,然后最近在学习张孝祥老师的JS,就学习了正则表达式,总结如下 正则表达式:对文字进行模糊的匹配的语言 regular expression 例子:对于图书的管理,图书编号的规则: 1,要么是五个数字 2,要么是五个数字加上一个连字符号“-”再加上4个数字 例:12345, 12345-1234 使用一个正则表达式可以完全表示他们:d{5}{-d{4}}? 表示五个连续的数字(d表示一个数字),{数字}表示前面d重复的次数,{}?表示这段内容是可以选择的,而在这段内容里面-d{4}表示的是数字,其中是四个连续数字组成。 例子: abc?表示匹配ab后面c可有可无的字符序列,而对于a{bc}?则表示开始字符是a后面字符为可有可无的bc字符序列 子表达式:圆括号括起来的表达式部分叫做一个子匹配(也叫子表达式)除了可以得到整个正则表达式的匹配结果之外,还可以单独得到每个子匹配部分得到的结果。 多个子表达式所匹配的原始内容是按照他们在子匹配在正则表达式模式从左到右顺序储存在缓冲区中,这个过程叫做捕获。圆括号中的子匹配的内容可以再整个表达式中位于这个括号之后的地方反引用,第一个圆括号所捕获的内容用1表示,第二个2类推 例如,要匹配2个相同的连续数字字符的正则表达式(d)1,要匹配五个相同数字字符的正则表达式(d)1{4},要匹配1221,1331,3443可以使用(d)(d)21 在Unix的正则表达式中^表示一行的开头 $表示一行的结束。
使用正则表达式用于快速的替换,使得其变为0.0.0.0,255.255.255,IAnA 未知地区 这种格式然后便于插入数据库: 例子二:
1,首先查询所有的邮箱,把其他无用信息去除 刷选:^.+"(.+@.+..+)"$ 替换:1 其中,^在Unix中表示一行的起头,"."表示任意一个字符 ,"+"表示前面修饰的一个或者以上字符,"."是转义,"()"使得他成为一个子匹配,$是一个结束符,这句话的意思是:匹配一行字符串,在这行字符串中前面有若干个字符串,之后又@,把以分号为间隔的字符作为子匹配,然后@之后有若干字符再有一个"."之后再有若干字符,再有一个分号。 替换只是需要把子匹配给留下就行 2,替换全部邮箱型号,改为@qq.com 改正则表达式为: (.+@).+ 更换的是1qq.com即可 3,在每一列的头部添加# 正则表达式: ^ 替换 # 即可在每一行前面加上# 4,去除某一系列邮箱,ru 去除163邮箱的客户 正则表达式: n.+@163.comr 下面替换:空 去掉整一行,不留下空行,其中n是上一行的换行符,r是自己本行的回车换行符,都被去掉了,然后这一行就不存在 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |