Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PowerShell删除特殊格式(选项卡、回车、退格、换行等)_Powershell_Tabs_Character - Fatal编程技术网

如何使用PowerShell删除特殊格式(选项卡、回车、退格、换行等)

如何使用PowerShell删除特殊格式(选项卡、回车、退格、换行等),powershell,tabs,character,Powershell,Tabs,Character,我想使用PowerShell删除这些回车符(或者至少我认为它们是这样的),但这样做有困难。我用过: -替换“n” -替换“t” -将“`b”替换为“ -将“`r”替换为“ 似乎什么都不管用。有什么建议吗?尝试使用正则表达式: [regex]::Replace("←xxxx←", "←" , "" ) # give xxxx 或者如果值是数字 [regex]::Replace("←356←", "\D" , "" ) # give 356 尝试使用正则表达式: [regex]::Replace

我想使用PowerShell删除这些回车符(或者至少我认为它们是这样的),但这样做有困难。我用过:

-替换“n”

-替换“t”

-将“`b”替换为“

-将“`r”替换为“

似乎什么都不管用。有什么建议吗?

尝试使用正则表达式:

[regex]::Replace("←xxxx←", "←" , "" ) # give xxxx
或者如果值是数字

[regex]::Replace("←356←", "\D" , "" ) # give 356
尝试使用正则表达式:

[regex]::Replace("←xxxx←", "←" , "" ) # give xxxx
或者如果值是数字

[regex]::Replace("←356←", "\D" , "" ) # give 356

如果您想对删除进行外科手术,一种粗糙但有效的方法是使用.Net ASCII编码对象获取违规字符的数值:

对于文本行中的每个字符,该代码将输出该字符,然后输出其数值。它看起来像这样(括号中的字符不会出现在实际输出中,它们是为了澄清):

通过对CSV文件的一行运行它,您应该能够检测到需要剥离的内容。然后,可以通过将数值转换回它所表示的ASCII字符来执行替换。例如,这两条语句都将从文本中删除一个`b字符:

$text -replace "`b",""
$text -replace $enc.GetChars(8),""

如果您想对删除进行外科手术,一种粗糙但有效的方法是使用.Net ASCII编码对象获取违规字符的数值:

对于文本行中的每个字符,该代码将输出该字符,然后输出其数值。它看起来像这样(括号中的字符不会出现在实际输出中,它们是为了澄清):

通过对CSV文件的一行运行它,您应该能够检测到需要剥离的内容。然后,可以通过将数值转换回它所表示的ASCII字符来执行替换。例如,这两条语句都将从文本中删除一个`b字符:

$text -replace "`b",""
$text -replace $enc.GetChars(8),""