Powershell对于两个类似的操作工作方式不同
问题描述:
参考此post,我试图用两种不同的方法来实现,显然PowerShell的响应方式不同,但它应该与我想的相同。任何人都可以解释为什么它不同吗?Powershell对于两个类似的操作工作方式不同
PS C:\> $x = "Hello
World"
PS C:\> $x
Hello
World
PS C:\> $x.Contains('`n')
False
PS C:\> $x.Contains("`n")
True
PS C:\> $x -Contains "`n"
False
PS C:\> $x -Contains '`n'
False
答
单引号字符串不会被评估,因此反引号不被视为转义字符和字符串没有被解析为换行符。
-contains
是一个遏制比较运算符,仅适用于集合,就像-in
。
所以一切都很好:)。
'-contains'用于数组。尝试''''' – Clijsters
反引号'是一个转义字符。你必须告诉powershell不要把它看作一个整体。 –
@RohinSidharth,但这正是Adeel想要做的。 (S)他想搜索'\'n',而不是''''''' – Clijsters