powershell - 如何替换字符串/文件末尾的字符?
问题描述
使用 PowerShell 格式化时,我试图删除文件末尾的恶意逗号。有问题的文件包含用户的城市、地区和国家/地区。
例子:
美国加利福尼亚州圣地亚哥,
但我希望它是:
美国加利福尼亚州圣地亚哥
如何在最后使用 ', ' 删除最后一个 ', ' -replace
?我的代码在下面不起作用:
(Get-Content file.txt) | ForEach-Object {
$_ -replace ', ', ''
} | Set-Content file.txt
我只需要一种方法来检测出现在我的文件中的最后一个“,”而不删除文件中存在的每个逗号。
解决方案
您需要将表达式锚定在字符串的末尾。$
在用字符完成的正则表达式中。\s*
如果您想忽略最后一个逗号之后的尾随空格,请添加 a :
$_ -replace ',\s*$'
推荐阅读
- swift - 如何从父类swift调用类扩展中定义的方法
- python - GEE Python API:导出表失败并出现意外错误
- c# - Datagrid组合框消失的内容+自动完成
- r - 里程半径上的限制标记
- tensorflow - 训练图像大小 Faster-RCNN
- javascript - 如何在 React 组件中使用 pickr 颜色选择器 vanilla JS 库?
- javascript - 使用 Cheerio 抓取多个网页
- javascript - 我应该如何处理两个函数“ui.resizable”和“css.rotate”的问题?
- mysql - mysql cte . 使用 with 和 insert it 会提示语法错误
- c - C字符串取消引用然后重新引用行为奇怪?