我试图用一行之间的空格分隔文本行。
这是我的代码
$Text= "hellohello"
if($Text -match "(\w+)(o)(\w+)") {$Text = ($Matches[1] + $Matches[2] -replace "o", "o ")+$Matches[3]}
有什么更好的方法?假设如果将文本更改为“ manymany”,我希望powershell自动识别第一个单词并在其之间添加空格。
答案 0 :(得分:0)
您提出的问题可能不分大小。以编程方式识别word
并非易事。
对于您的情况来说,这很简单,我假设您只是想找到重复的strings
并在它们之间插入一个空格。
正则表达式很容易做到。
"yesyesnonolarryhellohello" -replace "(\w{2,}?)\1",'$1 $1'
输出
yes yesno nolarryhello hello
.{2,}?
任何至少2个字符的字符串,()
标记为参考
\1
来引用第一个匹配的引用
因此,(.{2,}?)\1
可以匹配yesyes
,okok
和hellohello
,在这种情况下,$1
是yes
的值,{ {1}}和ok