我正在使用Get-EventLog来设置变量,然后使用事件ID描述设置另一个变量.然后我使用blat.exe将此信息通过电子邮件发送给组.
描述包含引号.引号导致blat退出并出错.
有没有办法从event.Message中删除引号并用空格或其他东西替换它们?
Mus*_*idi 18
如果变量是String对象,那么您可以执行以下操作:
$Variable.Replace("`"","")
Run Code Online (Sandbox Code Playgroud)
Pat*_*Pat 12
我其实刚刚得到它.引号和双引号的数量令我感到困惑,但这已经奏效,而且不会出错.
$var -replace '"', ""
Run Code Online (Sandbox Code Playgroud)
这些引用是:单引号,双引号,单引号,逗号,双引号,双引号.
pap*_*apo 10
根据具体情况,使用Trim(Char[]) 方法可能更简单:
...删除所有前导和尾随出现...
e.g. $your_variable.Trim('"')
Run Code Online (Sandbox Code Playgroud)
它只会从 $your_variable 的开头和结尾删除引号。它将保留任何引号,无论是否转义,它们都在 $your_variable 的文本中,因为它们是:
PS C:\> $v.Trim('"') # where $v is: "hu""hu"hu'hu"
hu""hu"hu'hu
Run Code Online (Sandbox Code Playgroud)
您可以使用Trim('"'), Trim("'"),但也可以同时使用:Trim("`"'")
请注意,Trim() 不关心引号是否是孤立的,这意味着它将删除结束或开始引号,而不管它在字符串的另一侧是否有成对的引号。
PS C:\Users\Papo> $hu = "A: He asked `"whos this sofa?`" B: She replied: `"Chris'`""
PS C:\Users\Papo> $hu
A: He asked "whos this sofa?" B: She replied: "Chris'"
PS C:\Users\Papo> $hu.trim('"')
A: He asked "whos this sofa?" B: She replied: "Chris'
PS C:\Users\Papo> # and even worse:
PS C:\Users\Papo> $hu.trim("'`"")
A: He asked "whos this sofa?" B: She replied: "Chris
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
53579 次 |
| 最近记录: |