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

无法让perl正则表达式工作

关于无法让Perl正则表达式工作的问题,这可能是由于以下原因导致的:

  1. 正则表达式语法错误:请检查您的正则表达式是否符合Perl正则表达式的语法规则。
  2. 编码问题:如果您正在处理非ASCII字符,请确保您的代码和数据文件都使用相同的编码格式。
  3. 输入数据问题:请确保您的输入数据是正确的,并且与您的正则表达式匹配。
  4. Perl版本问题:请确保您使用的Perl版本支持您的正则表达式语法。
  5. 其他问题:请检查您的代码是否存在其他问题,例如变量未定义或未正确使用。

如果您需要更多帮助,请提供更多关于您的问题的详细信息,例如正则表达式、输入数据和代码示例。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Perl正则表达式详解

”,也就是说该修饰符.真的可以匹配任意字符 /x 允许正则表达式使用空白符号,免得整个表达式难读难懂,但这样会原本的空白符号失去意义,这是可以使用\s来表示空白 /o 只编译一次正则表达式 /n...”,也就是说该修饰符.真的可以匹配任意字符 /x 允许正则表达式使用空白符号,免得整个表达式难读难懂,但这样会原本的空白符号失去意义,这是可以使用\s来表示空白 /o 只编译一次正则表达式 /n...{…}) 否 执行嵌入的Perl代码 (??{…}) 是 匹配嵌入Perl代码中的正则表达式 (?NUMBER) 是 调用组NUMBER中的独立子表达式,也记作(?+NUMBER), (?...<=word|words),但perl中不允许,因为perl严格要求长度必须固定。 固化分组 首先固化分组不是一种分组,所以无法去引用它。...而固化分组后,.已匹配后面所有内容,这些内容一经匹配绝不交回,即无法回溯。 但是,如果正则表达式是hel(?

80130

浅谈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正则表达式中模式中用?

1K30
  • Perl 工作积累(不定期更新)

    学会用 perl -c 检查语法, perl -e 直接执行语句, perldoc 查看文档 , CPAN 查找 module ... # 注释; =pod ......=cut 多行注释 特殊变量: $$     Perl解释器的进程ID @ARGV  保存命令行参数 @_    在子程序内,这个数组变量包含传递给子程序的参数 $_           默认输入...根据上下文内容返回错误号或者错误串 $@    Perl解释器从eval语句返回的错误消息 $?     ...7) perl 的print $log "xxx" ;  syswrite $log, "xxxx";     perl中的printf很多字符打印有问题,最好是使用syswrite来打印数据 8) >...', -1)  // 得到22 14) perl中的散列赋值都是引用拷贝而非值拷贝 15) perl打印shell脚本的结果信息之前需要先chomp结果,否则打印出来的信息不对 16)  取出url的后缀

    1.3K00

    posix,perl正则表达式区别

    1、正则表达式(Regular Expression,缩写为regexp,regex或regxp),又称正规表达式、正规表示式或常规表达式或正规化表示法或正规表示法,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串...在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容 。许多程序设计语言都支持利用正则表达式进行字符串操作。...例如,在Perl中就内建了一个功能强大的在正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。...2、PHP同时使用两套正则表达式规则,一套是由电气和电子工程师协会(IEEE)制定的POSIX Extended 1003.2兼容正则(事实上PHP对此标准的支持并不完善),另一套来自PCRE(Perl...PERL兼容正则匹配除了换行符外的任意一个字符 .

    1.3K20

    Perl正则表达式:正则匹配

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

    4.1K10

    Perl正则表达式超详细教程

    使用g将匹配两个”abc” c:在开启g的情况下,如果匹配失败,将不重置搜索位置 m:多行匹配模式 s:.可以匹配换行符”\n”,也就是说该修饰符.真的可以匹配任意字符 x:允许正则表达式使用空白符号...,免得整个表达式难读难懂,但这样会原本的空白符号失去意义,这是可以使用\s来表示空白 o:只编译一次正则表达式 n:非捕获模式 p:保存匹配的字符串到{^PREMATCH}、{^MATCH}、{^POSTMATCH...很多时候正则表达式并不会改变,比如循环匹配文件中的行,这样的多次编译导致性能下降很明显,于是可以使用o修饰符正则引擎对同一个正则表达式不重复编译。...因为不捕获,所以无法使用反向引用,也不会将分组结果赋值给$1这种特殊变量。 虽然有了分组捕获功能,就可以实现任何需求,但有时候可以这种行为变得更人性化,减少维护力度。...*已匹配后面所有内容,这些内容一经匹配绝不交回,即无法回溯。 但是,如果正则表达式是hel(?

    6.2K30

    Perl正则表达式:文本处理

    ⑴替换模式 在正则表达式中s/正则表达式/替换字符/模式可以对特定字符串进行匹配查找并替换(substitution),如果匹配失败则不替换。...⑵拆分模式 split是拆分模式的正则表达式,会根据模式匹配结果拆分字符串,其第一个参数为正则表达式,第二个参数为要拆分的字符串,返回值为拆分后的子字符串列表,假如有空子字符串,默认开头和中间的会被保留...和{3}这样的量词不同,*和+是贪婪量词,也即在正则表达式中间遇到这两个量词时会首先匹配尽量多的字符,然后再匹配后面的部分,如果后面的不匹配,正则表达式则会以每次吐出一个字符的方式来进行匹配,直至剩余最少字符数...⑸命令行选项 Perl除了可以使用命令行参数外,也可以使用命令行选项,常见的命令行选项如下所示: -h:打印Perl的命令选项列表; -v:打印Perl的版本信息; -c:只检查Perl脚本语法,而不执行脚本...; -w:打印警告信息,包括错误使用保留字、文件句柄、子程序等情况; -e:后加Perl命令(放在单引号内),用于在命令行直接执行Perl命令,多个命令之间以分号;隔开; -n:使Perl隐式地循环遍历指定的文件或输入内容

    4.8K10

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

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

    1.1K20

    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...同时括号也会引起正则表达式分配新 的内存块。这些内存含有括号中的模式所匹配的字符串。如果有不止一对括号,那就不止一块内存块。每一个内存块内有 一段字符串,而非模式的一部分。...另一种说法是,$`中含有正则表达式引擎在匹配成功前所找到的变 量,而$'为此模式还没有匹配的剩余部分。

    69230

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

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

    2.1K20
    领券