正则表达式匹配字符串中的EOL字符
问题描述:
我试图找到出现在双引号之间的LF字符。该文本文件我在寻找具有这种格式的正则表达式匹配字符串中的EOL字符
msgid "text 1"
msgstr "text 2"
字段值对我试图找到,如果LF字符出现的文本1或文本2串内。我曾尝试"[^"\r\n]*\n[^"\r\n]*"
,但它只是拿起" msgstr "
答
此正则表达式:
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
什么正则表达式的味道你使用? –