簡體   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