我的問題很簡單,因爲我的標題是「什麼是perl的相當於grep -o的一行代碼?」。那是隻打印匹配的正則表達式而不是整行?什麼是Perl的相當於grep的一行代碼-o
perl -pe some_option?? 'm/regex/' file
我的問題很簡單,因爲我的標題是「什麼是perl的相當於grep -o的一行代碼?」。那是隻打印匹配的正則表達式而不是整行?什麼是Perl的相當於grep的一行代碼-o
perl -pe some_option?? 'm/regex/' file
如果你想要做的工作的最小量,改變
grep -o -P 'PATTERN' file
到
perl -nle'print $& if m{PATTERN}' file
所以從
grep -o -P '(?<=foo)bar(?=baz)' file
你:
perl -nle'print $& if m{(?<=foo)bar(?=baz)}' file
但是,它可以簡單的使用捕獲。
你可以只改變代碼:
perl -ne 'if(/(regex)/) {print "$1\n"}' file
perl -nE 'say $& while /regex/g' file
參見:[grep的-P不再工作我怎麼可以重寫我的搜索(http://stackoverflow.com/questions/16658333/grep-p-no-longer-works-how-can-我重寫,我的搜索/ 16658690)。 (不是一個特定於Perl的問題,但最重要的答案是回答這個問題。) – ikegami