加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl正则表达式

发布时间:2020-12-16 00:35:27 所属栏目:大数据 来源:网络整理
导读:0,正则表达式是一组字符串的抽象. 1,匹配操作符 =~、!~: ?=~检验匹配是否成功,!~则相反 2,正则表达式有几种使用方法: ? 第一种:最常用的一种,就是确定一个字符串中是否匹配某个模式,/foo/ ? 第二种:如果你能将一个模式在字符串中定位,你就可以用别的东

0,正则表达式是一组字符串的抽象.
1,匹配操作符 =~、!~:
?=~检验匹配是否成功,!~则相反
2,正则表达式有几种使用方法:
? 第一种:最常用的一种,就是确定一个字符串中是否匹配某个模式,/foo/
? 第二种:如果你能将一个模式在字符串中定位,你就可以用别的东西来替换它
????????? s/foo/bar/,表示将 foo 替换成 bar
? 【 a {} represents any pair of delimiters you choose,if"/" is the delimiter then the initial m is optional
?//? m{}??? Pattern match??
??qr{}?????? Pattern???
?? s{}{}???? Substitution???
??tr{}{}?? Transliteration?】

3,if($line =~ /http:/)
???? =~ 符号(模式绑定操作符)告诉 Perl 在 $line 中寻找匹配正则表达式“http:”, 如果你不是用=~ 操作符,Perl 会对缺省
字符串进行操作。缺省的字符串就是 $_ 这个特殊标量。实际上,$_ 并????? 不是仅仅是模式匹配的缺省字符串。其
它的一些操作符缺省也使用 $_ 变量。
???? 因此可以简化成:if(/http:/)
4,+意味着一个或多个相同的字符
?? []意味着匹配一组字符中的一个,[^]这里的^表示后边的字符表的反集。
5,锚模式:
??? ^ 或 A : 仅匹配串首
??? $ 或 Z : 仅匹配串尾?
??? b????? : 匹配单词边界?
??? B????? : 单词内部匹配
6,量词{}:
??
? 如果在括弧中只有一个数字,这个数字就指定了最少和最多匹配次数。
? 有最少次数和逗号,但省略了最大次数,那么最大次数将被当作无限次数
? d{7,11} 将匹配最少 7 位数字,但不会多于 11 位数字。
? +,代表 {1,},意思为“最少一次”
? *,表示 {0,},
? ? 表示 {0,1},表示“零或一次”
? 注意:
??????? 缺省时量词作用在它前面的单个字符上,因此 /bam{2}/ 将匹配 “bamm”而不是“bambam”。
??? 如果你要对多于一个字符使用量词,你需要使用圆括弧。
??? 因此为了匹配“bambam”需要使用 /(bam){2}/。

7,字符范围转义:
???? 转义字符?? 描述??????????????????? ?? 范围?
?d??? 任意数字 ?????[0-9]?
?D??? 除数字外的任意字符? ???[^0-9]?
?w??? 找寻符合英文字母,数值的字符串 ??[_0-9a-zA-Z]?
?W??? 找寻符合非英文字母,数值字符的字符串?[^_0-9a-zA-Z]?
?s??? 空白 ?????[ rtnf]?
?S??? 非空白 ?????[^ rtnf]
8,匹配任意字符:
??? 字符"."匹配除换行外的所有字符,通常与*合用。
9,小结:
?特殊字符 ?描述?
?() ??模式内存?
?+ * ? {} ?出现次数?
?^ $ b B? 锚?
?| ??选项,可以连接多个模式
10,模式匹配选项:
??? 选项 描述?
??? g??? 匹配所有可能的模式 全局修饰符
??? i??? 忽略大小写?
??? m??? 将串视为多行?
??? o??? 只赋值一次?
??? s??? 将串视为单行?
??? x??? 忽略模式中的空白?
?
11,转换操作符,并不使用正则表达式
???? tr/searchlist/replacementlist/
??? (1)按照默认设置,转换操作符用于对变量$_进行搜索和修改 ??? (2)tr/A-Z/a-z/; change all? uppercase to lowercase ??? (3)如果replacementlist是空的,或者与searchlist相同,那么tr///将计算并返回匹配的字符。目标字符串并不被修改

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读