【发布时间】:2018-04-26 11:45:44
【问题描述】:
这可能非常简单。我只想匹配字符串中的所有字符串,包括换行符。 示例:
文本文件:
MESSAGE BEGIN
mary had a little lamb.
little lamb
MESSAGE END
输出预期:
mary had a little lamb.
little lamb
这是我目前拥有的。它工作正常,除了所有内容都在 1 行中。
代码(我目前有):
$pattern= Regex::"MESSAGE BEGIN(.*?)MESSAGE END"
[regex]::Match($text,$pattern).Groups[1].Value
结果:
mary had a little lamb.little lamb
我希望它尊重换行符,这样它们就不会全部挤在一起。
【问题讨论】:
-
你确定没有换行符吗?我建议它们可能在那里,但您在使用的工具中看不到它们。
-
@wp78de 但似乎 dot 已经在换行符之间匹配了。
-
内容来自一个文本文件,我猜是有返回的。它完全符合我希望它匹配的内容,但它不尊重换行符\换行符。如果我使用了错误的术语,我很抱歉。
-
如果文件中有换行符,那么应该保留。我猜问题出在你读取文件的方式上。
-
([\s\S]*?) 不完全是。但它比其他人工作得更好。与我原来的输出相同 (.*?)
标签: regex powershell