首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Perl正则表达式:正则匹配

在初步了解了正则表达式语言之后,接下来需要了解如何在Perl中使用正则表达式。...⑴匹配模式 我们已知在Perl正则表达式被称为模式,这种模式(也即正则表达式)可以放在由成对符号(例如()、、{}等)或者一对不成对的符号(例如//、!!...在Perl中有很多处理模式,其中最简单的为匹配模式m//,或者也可以理解为查找模式。由于正则表达式本身就有匹配的含义,以双斜杠作为定界符时m可以省略。其他处理模式详见下一小节。...模式当中有多少圆括号,就有多少捕获变量,这些变量在正则表达式匹配完成之后仍可以使用,捕获变量是Perl正则表达式强大的原因之一。...此外,Perl还有三个自动捕获变量,其中$&内储存的是正则表达式匹配的全部内容,$`内储存的是匹配区段之前的内容,$'内储存的是匹配区段之后的内容。

4K10

Perl正则表达式详解

Perl中的正则表达式使用示例 m//修饰符 LVALUE =~ m/PATTERN/; LVALUE =~ /PATTERN/; 修饰符 含义 /i 匹配时忽略大小写 /g 全局匹配,默认情况下,正则表达式...{…}) 否 执行嵌入的Perl代码 (??{…}) 是 匹配嵌入Perl代码中的正则表达式 (?NUMBER) 是 调用组NUMBER中的独立子表达式,也记作(?+NUMBER), (?...(DEFINE)…) 否 为完成后面的”正则表达式子例程”调用,将命名组定义为(?...匹配用十六进制给定的字符 \X 是 匹配字形簇(不在字符类中) \z 否 只在字符串末尾为true \Z 否 在字符串末尾或可选的换行符前面时为true /c使用示例 这里之所以加一个g修饰符是因为perl...<=word|words),但perl中不允许,因为perl严格要求长度必须固定。 固化分组 首先固化分组不是一种分组,所以无法去引用它。

71030
您找到你想要的搜索结果了吗?
是的
没有找到

Perl 编译安装 (Linux

Perl是高端、通用、解释型、动态的编程语言家族。Perl借用了C、sed、awk、shell脚本、Lisp以及很多其他编程语言的特性。...其中最重要的特性是Perl内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。 Perl语言应用广泛,涵盖CGI、图形编程、系统管理、网络编程、金融、生物等领域。...在 Linux 发行版下使用指定包管理软件,常常只能安装指定的perl,如果需要安装特定版本 perl,就需要编译安装,下面以 Centos 环境为例介绍编译安装 Perl 的方法。... /usr/bin/perl Step3: 检测 perl -v 参考文献# Perl By Wikipedia http://www.cpan.org/src/5.0/ Perl 编译安装 How to...build perl from source on Linux 注:本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

54430

浅谈Perl正则表达式

一、简介 Perl正则表达式中模式指在字符串中寻找的特定序列的字符,由反斜线包含:/def/即Perl正则表达式中模式def。...\n”); }                   三、Perl正则表达式中模式中的特殊字符 PERLPerl正则表达式中模式中支持一些特殊字符,可以起到一些特殊的作用。...正则表达式中模式匹配选项 选项描述 g匹配所有可能的Perl正则表达式中模式 i忽略大小写 m将串视为多行 o只赋值一次 s将串视为单行 x忽略Perl正则表达式中模式中的空白 1、匹配所有可能的Perl...七、扩展Perl正则表达式中模式匹配 PERL支持PERL4和标准UNIXPerl正则表达式中模式匹配操作所没有的一些Perl正则表达式中模式匹配能力。其语法为:(?...=[0-9])/; $matched=$&;#$&为已匹配的Perl正则表达式中模式,此处为abc,而不是abc8 4、Perl正则表达式中模式注释 PERL5中可以在Perl正则表达式中模式中用?

96430

Perl正则表达式超详细教程

前言 想必学习perl的人,对基础正则表达式都已经熟悉,所以学习perl正则会很轻松。这里我不打算解释基础正则的内容,而是直接介绍基础正则中不具备的但perl支持的功能。...关于基础正则表达式的内容,可参阅基础正则表达式。 我第一个要说明的是,perl如何使用正则。...还记得当初把《精通正则表达式》的书看了一遍,把perl正则也学了个七七八八,但是学完后却不知道怎么去使用perl正则,虽然里面也介绍了一点如何使用perl语言,grep的”-P”选项使用的也是perl正则...,ack工具支持的也完全是perl正则,但都没有完整地体现perl正则的功能,总感觉缺点啥。...正则教程:man perlretut perl正则完整文档:man perlre 学perl正则必备的一点基本语法 新建一个文件作为perl脚本文件,在其首行写上#!

6K30

Perl正则表达式:文本处理

⑴替换模式 在正则表达式中s/正则表达式/替换字符/模式可以对特定字符串进行匹配查找并替换(substitution),如果匹配失败则不替换。...⑵拆分模式 split是拆分模式的正则表达式,会根据模式匹配结果拆分字符串,其第一个参数为正则表达式,第二个参数为要拆分的字符串,返回值为拆分后的子字符串列表,假如有空子字符串,默认开头和中间的会被保留...实际做的是将文件内容进行掉包,程序运行结束后program01.dat.bak可以看成旧文件的备份文件,其运行以及修改完之后的日志文件如下所示: 这里date为linux系统的date命令,输出的为当前时间加一个换行符...⑸命令行选项 Perl除了可以使用命令行参数外,也可以使用命令行选项,常见的命令行选项如下所示: -h:打印Perl的命令选项列表; -v:打印Perl的版本信息; -c:只检查Perl脚本语法,而不执行脚本...; -w:打印警告信息,包括错误使用保留字、文件句柄、子程序等情况; -e:后加Perl命令(放在单引号内),用于在命令行直接执行Perl命令,多个命令之间以分号;隔开; -n:使Perl隐式地循环遍历指定的文件或输入内容

4.7K10

Perl正则表达式:字符与字符集

⑴元字符 正则表达式语言由两种基本字符类型组成:原义文本字符和元字符(metacharacter)。...常用的元字符及其表达式的含义如下表所示: 元字符的元(meta)实际上是通配的意思(但与linux的通配符不是一个体系)。...在Perl中,反斜杠\就是一个特殊的元字符,要想匹配元字符本身(而不是他在正则表达式里面的含义),可以在相应的元字符之前加反斜杠,例如'\.'...⑵模式分组与捕获 在Perl正则表达式中,圆括号()也是一个特殊的元字符,用来对字符串进行分组,很多元字符只对单个字符进行操作,进行分组后可对多个字符进行操作,如下所示: fred+ #可匹配freddddd...从Perl 5.14开始,可以在正则表达式界定符后面添加修饰符a(关于界定符和修饰符详见下一小节),则正则表达式严格按照ASCII编码进行匹配,例如/\d/a则等同于/[0-9]/。

91620

PERL学习笔记---正则表达式的应用

◆某些正则表达式实现中开头的锚定和结尾锚定不同,但Perl 中均使用\b。 这些单词(words)不是你或者我通常认为的那样;它们是\w 类型,由通常的字母,数字,下划线组成。...print “Do you like Perl?...”; my $likes_perl = ( =~ /\byes\b/i); … #Times passes… if($likes_perl){ print “You said earlier...同时括号也会引起正则表达式分配新 的内存块。这些内存含有括号中的模式所匹配的字符串。如果有不止一对括号,那就不止一块内存块。每一个内存块内有 一段字符串,而非模式的一部分。...另一种说法是,$`中含有正则表达式引擎在匹配成功前所找到的变 量,而$'为此模式还没有匹配的剩余部分。

65530

Perl正则表达式(2) – 用正则表达式进行匹配

Perl正则表达式 2. 用正则表达式进行匹配 2.1 用 m// 进行匹配 到目前为止,我们都是讲正则表达式的内容写在一对斜线内,如/fred/。.../usr/bin/perl if (/(bronto)?...虽然这三个变量可以免费使用,但是一旦使用自动捕获变量,其他正则表达式的运行速度也会跟着变慢。 Perl 5.10之后,为了防止自动捕获变量拖慢程序速度,我们可以指定自动捕获变量的作用范围。...2.7 模式测试程序 在编写perl程序的时候,每个程序员都避免不了要使用正则表达式,但有时候很难轻易看出一个模式能够做什么,下面这个程序非常实用,可以用于检测某些字符串是否能够被指定模式匹配以及在什么为止匹配.../usr/bin/perl #可以用以下程序调试正则表达式,验证是否符合我们期望的匹配结果 while () { chomp; if(/YOUR_PATTERN_GOES_HERE/)

2K20
领券