我工作的PowerShell腳本和我有我需要更換反斜槓線,這種模式相匹配的幾個文本文件:.. >\\%name% .. < ..
(..
可以是任何東西)選擇兩個字符之間所有的反斜線
示例串從文件中的一個,其中反斜槓應該匹配:從所述文件中的一個
<Tag>\\%name%\TST$\Program\1.0\000\Program.msi</Tag>
實施例的字符串,其中反斜槓不應匹配:
<Tag>/i /L*V "%TST%\filename.log" /quiet /norestart</Tag>
到目前爲止,我已經成功地選擇>\\%name%
和<
之間的每一個字符用這個表達式(Regex101): (?<=>\\\\%name%)(.*)(?=<)
但我失敗了只選擇反斜線。
有沒有我找不到的解決方案?
我不是100%,但在正則表達式中這可能是不可能的。您的問題與[this]類似(https://stackoverflow.com/questions/3200467/how-to-make-a-group-for-each-word-in-a-tencetence)問題。我沒有看到如何多次使用組捕獲每個反斜槓,而不捕獲它們之間的文本。 –