Powershell 搜索并替换结尾未知的字符串

Powershell 搜索并替换结尾未知的字符串

我想将 03 01 2018 替换为其他日期。使用以下内容或更好的内容:

————

$M = Read-Host -Prompt 'Input your MM'

$D = Read-Host -Prompt 'Input the DD'

$Y = Read-Host -Prompt 'Input your YY'

(Get-Content C:\Users\Desktop\file.txt) | ForEach-Object { $_ -replace "DOB=                ", "MM DD YY" } | Set-Content C:\Users\Desktop\file.txt

————

我不知道如何搜索随机日期。此外,DOB=** ** ** 永远不会位于同一行号中。

————

文件.txt 例如:

FLOPPY=TRUE

CLOSETIME=0

OPENTIME=0400

EVENTTIME=0

DOB=03 01 2018         (I don’t know the date and it not base on the system date)

xxxxxxxx=00 00 0000

xxxxxxxx=00 00 0000

Variable 1

Variable 2

Variable 3

....

——————

答案1

尝试使用这个:

(Get-Content C:\Users\Desktop\file.txt) | ForEach-Object { $_ -replace "\b(DOB=\d{2} \d{2} \d{4})\b", "MM DD YY" } | Set-Content C:\Users\Desktop\file.txt

相关内容