2011-10-12 198 views
1

我試圖找到出現在雙引號之間的LF字符。該文本文件我在尋找具有這種格式的正則表達式匹配字符串中的EOL字符

msgid "text 1" 
    msgstr "text 2" 

字段值對我試圖找到,如果LF字符出現的文本1或文本2串內。我曾嘗試"[^"\r\n]*\n[^"\r\n]*" ,但它只是拿起" msgstr "

+1

什麼正則表達式的味道你使用? –

回答

0

此正則表達式:

if ($subject =~ m/"([^"\r\n]*?[\r\n]+[^"\r\n]*?)"\s*$/m) { 
    $result = $1; 
} 

當應用於這些字符串:

msgid "text 1 " 
msgstr "text 2" 
msgstr "something with new 
line" 

會產生這樣的輸出:

something with new 
line