当前位置:  开发笔记 > 编程语言 > 正文

无法在powershell中转义管道符(|)

如何解决《无法在powershell中转义管道符(|)》经验,为你挑选了2个好方法。

我试图在文件的每一行中找到管道(|)字符的数量.我正在使用以下命令来执行此操作.

gc .\test.txt | % { ($_ | select-string "|" -all).matches | measure | select count }

它不计算管道符号.

我也试过了

    `|

    '|'

     |

谁能告诉我如何逃避电源外壳中的管道特征?

如果我使用除管道之外的字符串或字符,则命令正常工作.



1> briantist..:

反斜杠\是正则表达式的转义字符.

gc .\test.txt | % { ($_ | select-string "\|" -all).matches | measure | select count }

如果您不确定,可以随时使用[RegEx]::Escape():

$pattern = [RegEx]::Escape("|")
gc .\test.txt | % { ($_ | select-string $pattern -all).matches | measure | select count }

否则,管道不必在字符串内的PowerShell中进行转义.



2> Joey..:

使用-SimpleMatch参数for Select-String,关闭正则表达式匹配.

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有