Регулярное совпадение символа EOL в строке - PullRequest
1 голос
/ 12 октября 2011

Я пытаюсь найти символы LF, которые появляются между двойными кавычками.В текстовом файле, который я ищу, есть пары полей-значений в этом формате

    msgid "text 1"
    msgstr "text 2"

Я пытаюсь найти, появляются ли символы LF в строках text 1 или text 2.Я пытался "[^"\r\n]*\n[^"\r\n]*", но он просто набирает " msgstr "

1 Ответ

0 голосов
/ 12 октября 2011

Это регулярное выражение:

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
...