【发布时间】:2015-06-07 22:20:25
【问题描述】:
我有一个与Multiline Regex in PowerShell 非常相似的问题,但我似乎无法让我的表达发挥作用。就像其他问题一样,我需要解析一个文件并替换我想要的东西。我的问题是我要查找的不是固定字符串,而是像这样的多行日志条目:
$log_number
$entry
$tag
我需要用一个新的字符串替换一个选定标签的每个条目。到目前为止我有
(Get-Content $($parent_dir + $old_name + ".log")) |
Out-String |
ForEach-Object {$_ -replace "", "This is a test"} |
Set-Content $($parent_dir + $new_name + ".log")
但我似乎找不到与我正在寻找的格式匹配的正则表达式查询。我试图修改我在这个问题上找到的一个:Multiline regex to match config block
'(?smi)([0-9]{1, }(\s*$)){2}.*?S0B0L'
但这似乎不起作用。我完全被难住了,任何帮助都将不胜感激!
例子:
39983
"set x 1"
random_user
39984
"set x 45"
S0B0L
39985
"set x 23"
random_user
变成:
39983
"set x 1"
random_user
This is a test
39985
"set x 23"
random_user
【问题讨论】:
标签: regex powershell