gpt4 book ai didi

regex - 在powershell中用正则表达式替换文本文件的内容

转载 作者:行者123 更新时间:2023-12-02 16:41:50 25 4
gpt4 key购买 nike

我有一个简单的文本文件,我需要一个 powershell 脚本来替换文件内容的某些部分。

我当前的脚本如下:

$content = Get-Content -path "Input.json"

$content -Replace '"(\d+),(\d{1,})"', '$1.$2' | Out-File "output.json"

是否可以像这样在没有内容变量的情况下将其写在一行中?

Get-Content -path "Input.json" | ??? -Replace '"(\d+),(\d{1,})"', '$1.$2' |  Out-File "output.json"

我不知道如何在没有 $content 变量的情况下在第二个命令中使用第一个 get-content commandlet 的输出?是否有自动powershell变量

是否可以在管道中进行比一次更多的替换。

Get-Content -path "Input.json" | ??? -Replace '"(\d+),(\d{1,})"', '$1.$2' | ??? -Replace 'second regex', 'second replacement' |  Out-File "output.json"

最佳答案

是的,您可以在一行中完成此操作,甚至不需要管道,因为 -replace 像您期望的那样在数组上工作(并且您可以链接运算符):

(Get-Content Input.json) `
-replace '"(\d+),(\d{1,})"', '$1.$2' `
-replace 'second regex', 'second replacement' |
Out-File output.json

(为了便于阅读而添加换行符。)

Get-Content 调用周围的括号是必要的,以防止 -replace 运算符被解释为 Get-Content 的参数。

关于regex - 在powershell中用正则表达式替换文本文件的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16250258/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com