我将Excel转换为CSV,并尝试使用带有替换的ForEach-Object
循环来清理所有垃圾字符(非英语)。
[当我找到要删除的字符时,我将它们通过管道连接在一起。
我的代码行开始变得很长。有没有所有管道的更有效方法吗?我正在使用Powershell ISE。
示例:
(Get-Content C:\Users\myexcel.csv) | ForEach-Object { $_ -replace '\W',' '} |`
ForEach-Object { $_ -replace 'ÿ',' '} | ForEach-Object { $_ -replace 'À',' '} |`
ForEach-Object { $_ -replace 'Ô',' '} | ForEach-Object { $_ -replace 'õ',' '} |`
ForEach-Object { $_ -replace 'ý',' '} > C:\Users\newfile.csv
您可以链接替换项,而无需不断地传递。
E.G。
(Get-Content "C:\Users\myexcel.csv") -replace '[ÿÀõÔý\\W]',' ' | Out-file "C:\Users\newfile.csv"
[[
和]
表示一个字符集,匹配其中的任何字符。