【发布时间】:2017-12-29 19:29:57
【问题描述】:
我正在编写一个 powershell 脚本,我有几个文本文件需要替换与此模式匹配的行中的反斜杠:.. >\\%name% .. < ..(.. 可以是任何东西)
反斜杠应该匹配的文件之一的示例字符串:
<Tag>\\%name%\TST$\Program\1.0\000\Program.msi</Tag>
反斜杠不应匹配的文件之一的示例字符串:
<Tag>/i /L*V "%TST%\filename.log" /quiet /norestart</Tag>
到目前为止,我已经设法使用此表达式 (Regex101) 选择了 >\\%name% 和 < 之间的每个字符:
(?<=>\\\\%name%)(.*)(?=<)
但我没有只选择反斜杠。
有没有我还没有找到的解决方案?
【问题讨论】:
-
我不是 100%,但这在正则表达式中可能是不可能的。您的问题类似于this 问题。我不明白如何使用组多次捕获每个反斜杠,而不捕获它们之间的文本。
标签: regex powershell