perl 之 正则表达式 (简)

正则表达式,简单介绍:

元字符 匹配项
字符类:单字符与数字  
. 匹配除换行符之外的任意字符
[a-z0-9] 匹配集中任意单字符
[^a-z0-9] 匹配不在集合中的任意单字符
\d 匹配单个数字
\D 匹配非数字字符,等效于[^0-9]
\w 匹配数字型的(字)字符
\W 匹配非数字型的(非字)字符
字符类:空白字符  
\s 匹配空白字符,如空格、制表符和换行符
\S 匹配非空白字符
\n 匹配换行符
\r 匹配回车符
\t 匹配制表符
\f 匹配进纸符
\b 匹配退格符
\0 匹配空值字符
字符类:锚定字符  
\b 匹配字边界(不在[]中时)
\B 匹配非字边界
^ 匹配行首
$ 匹配行尾
\A 匹配字符串开头
\Z 匹配字符串或行的末尾
\z 只匹配字符串末尾
\G 匹配前一次m//g离开之处
字符类:重复字符  
x? 匹配0或1个x
x* 匹配0或多个x
x+ 匹配1或多个x
(xyz)+ 匹配1或多个模式xyz
x(m,n) 匹配m到n个x组成的值
字符类:替换字符  
was|were|will 匹配was、were、will之一
字符类:记忆字符  
(string) 用于反向引用
\1或$1 匹配第一组括号
\2或$2 匹配第二组括号
\3或$3 匹配第三组括号
字符类:其他字符  
\12 匹配八进制数,直到\377
\x811 匹配十六进制数值
\cX 匹配控制字符。譬如\cC指的是Ctrl-C,\cV指的是Ctrl-V
\e 匹配ASCII编码中的ESC符(取消),而非反斜杠
\E 标识使用\U、\L或\Q的大小写更改操作的结束位置
\I 只小写下一个字符
\L 小写字符,直到字符串末尾或碰到\E
\N 匹配已命名的字符,如\N{greek:Beta}
\p{PROPERTY} 匹配拥有已命名属性的任意字符,譬如\p{IsAlpha}/
\Q 引用\E之前的元字符
\u 只大写下一个字符
\U 大写字符,直到字符串末尾或碰到\E
\x{NUMBER} 匹配以十六进制形式给出的Unicode编码NUMBER
\X 匹配Unicode编码“组合字符序列”字符串
[ 匹配元字符

原文地址:https://www.cnblogs.com/Star-Haitian/p/8760163.html

时间: 2024-08-30 03:31:48

perl 之 正则表达式 (简)的相关文章

Perl入门(四)Perl的正则表达式

正则表达式是Perl语言的特色,基本的语法不是很难,但是编写一个符合需求.高效的正则表达式,还是有一些挑战的. Perl的三种匹配模式 1.查找 语法:m/正则表达式内容/; 作用:查找匹配内容中是否包含"正则表达式内容",如果包含返回1,否则返回0: #!user/bin/env perl -w #1... $str1 = "i like perl"; $result1 = ($str1 =~ m/perl/); print "$result1 $str

PHP -- Perl风格正则表达式

1.正则表达式作为一个匹配的模版,是由原子(普通字符,例如a-z),有特殊功能的字符(元字符,例如*.+ 和?等),以及模式修正符三个部分组成.2.在于Perl兼容的正则表达式函数中使用模式时一定要给模式加上定界符,即将模式包含再两个反斜线  /  之间 . 一.定界符再使用Perl兼容的正则表达式时,要将模式表达式放进定界符之间.作为定界符不仅仅局限使用"/",除了数字.字符.和反斜线\意外的任何字符都可以作为定界符号.不过通常都习惯讲模式表达式包含在两个斜线/之间. 二.原子原子是

c++与perl在正则表达式运算速度上的比较

写了两组代码文件,组内代码功能相同: testv.pl vs testv.cpp testreg.pl vs testreg.cpp 代码如下: ////////testreg.cpp/////////#include<iostream>#include<fstream>#include<regex>using namespace std;int main(int argv, char ** argc){    fstream in(argc[1], fstream::

Perl之正则表达式--模式匹配

大家用过unix或者linux系统,对vi,sed,grep,awk等使用工具不会陌生,应该了解用于定界符搜索模式的正则表达式和元字符.那么什么是正则表达式呢?正则表达式是一种序列或者字符模式,负责在搜索或者替换文本时对文本内容进行字符串匹配.简单的正则表达式直接由待匹配字符串或字符集构成. 正则表达式一般以斜杠(/)做界定符.实际上任何字符串都可以成为界定符.例如:/abc/, ?abc? 表达式修饰符与简单语句 常见修饰符:if  unless while  until foreach if

perl的正则表达式

1.".":任意单字符(‘\n‘除外): 2.“*“:匹配前项0-n次: 3.“+“:匹配前项1-n次: 4.“?”:匹配前项0-1次: 5.1.“\1"或"\2“:反向引用: 5.2.“\g{N}":方向引用,如果N为负数,则为相对反响引用: 6.“|”:“或“匹配: 7.1.“[]”:字符集单一字符匹配: 7.2."[^]“:反向字符集单一字符匹配: 8.1.“\d":[0-9](反向匹配:"\D"):“[\d\

请对 POSIX 风格和兼容 Perl 风格两种正则表达式的主要函数进行类比说明

POSIXF风格的正则表达式主要函数有ereg 函数:(正则表达式匹配).ereg_replace 函数:(正则表达式替换) Perl风格的正则表达式主要函数有preg_match 函数:(进行正则表达式匹配).preg_replace  函数:(执行正则表达式的搜索和替换)   1.匹配正则表达式对比 int ereg ( string $pattern , string $string [, array &$regs ] ) int preg_match ( string $pattern

perl正则表达式第一周笔记

正则表达式基础 ^ 行首标志 $ 行末标志 如^cat$即一整行只有cat这个单词,^$则是一个空行 [  ] 字符组,用来匹配若干字符之一 如gr[ae]y,即grey或者gray - 在字符组内部,字符组元字符'-'(连字符)表示一个范围(前提是不在字符组开头) 如<H[123456]>和<H[1-6]>是一样的.而[0-9] [a-z] [A-Z]分别用于匹配所有数字.小写字母和大写字母,还可以写成多重范围[]0-9a-zA-Z] 注意,只有在字符组中,'-'才是元字符,其他

perl学习笔记之:正则表达式

 Perl 中的正则表达式 正则表达式的三种形式  正则表达式中的常用模式  正则表达式的 8 大原则          正则表达式是 Perl 语言的一大特色,也是 Perl 程序中的一点难点,不过如果大家能够很好的掌握他,就可以轻易地用正则表达式来完成字符串处理的任务,当然在 CGI 程序设计中就更能得心应手了.下面我们列出一些正则表达式书写时的一些基本语法规则. ----------------------------------------------------------------

perl学习之正则表达式

9    Perl 中的正则表达式 正则表达式的三种形式 正则表达式中的常用模式 正则表达式的 8 大原则 正则表达式是 Perl 语言的一大特色,也是 Perl 程序中的一点难点,不过如果大家能够很好的掌握他,就可以轻易地用正则表达式来完成字符串处理的任务,当然在 CGI 程序设计中就更能得心应手了.下面我们列出一些正则表达式书写时的一些基本语法规则. -----------------------------------------------------------------------