用于查找和替换字符串的powershell代码

时间:2017-01-30 12:23:55

标签: string powershell replace split

我有一个包含HTML内容的字符串。

我想找几个字符并用其他字符串替换。

例如:

$Content = "This is my string. For more information, goto http://www.example.com/searchpage.htm. You will get the required information here. You can also get information at http://www.example.com/searchpage1.htm. Do not replace sample.htm.  Do not replace sample1.htm."

无论我在哪里找到文字example.com,我都需要使用example1.com替换,同一网址包含.htm .html

如果网址不包含example.com,我不想替换.htm 下面是代码的一部分,我可以实现替换 example.com 但是我无法在同一个URL中替换.htm部分。

我不想在主要内容中替换.htm。 我只想在替换.htm

的地方替换example.com
$find = "http://www.example.com/"

$newContent = "http://www.example1.com/"

$replacedContent =  $Content -replace $strFind,$strReplace

我想知道如何在长字符串中替换多个部分的文本。

请建议!

1 个答案:

答案 0 :(得分:1)

可能不是最安全的方式(如果URL不包含.htm)但可以为你做到:

$Content -replace 'http://www\.example\.com(.+?)\.html?', 'http://www.example1.com$1.html'