繁体   English   中英

Perl-正则表达式转义失败

[英]Perl - Regex escaping failure

但是,在Perl onliner失败之后,可以使用正则表达式。 偷偷摸摸是有问题的,但我无法指出。 有人可以帮我吗? 我在Linux / Bash上。

perl -pi -e '(?<=\.zip).*?(hren)|(^\")|(^\r\n|^\n)|(^New).*?(\")|(\,\s)' file

这是错误消息:

Unmatched ) in regex; marked by <-- HERE in m/<=\.zip) <-- HERE .*/ at -e line 1.

正如@mpapec所指出的,您忘记添加m//来使该语句成为正则表达式。 那么,如果不将其视为正则表达式,为什么会收到正则表达式错误呢?

Perl认为您正在尝试使用?PATTERN? 模式匹配的格式,请参见perlop 它看起来:

?<=\.zip).*?

尝试解释?..?之间的位 作为正则表达式并正确标识不匹配的)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM