PowerShell:从 $result 变量中删除文本
PowerShell: Remove text from $result variable
我需要从 $result
中删除 (UTC-07:00)
。如何做到这一点?
$Result = '(UTC-07:00) Mountain Time (US & Canada)'
使用 -replace
正则表达式运算符:
$Result = '(UTC-07:00) Mountain Time (US & Canada)'
$TimeZoneName = $Result -replace '^\(UTC[+-][01][0-9]:[0134][05]\)\s*'
使用的正则表达式模式描述:
^ # start of string
\( # a literal `(`
UTC # the string `UTC`
[+-] # a `+` or a `-`
[01][0-9]:[0134][05] # a HH:mm timestamp
\) # a literal `)`
\s* # 0 or more whitespace characters
用于时间戳的表达式 ([01][0-9]:[0134][05]
) 可能看起来有点奇怪,但时区偏移量始终以 15 分钟为增量,因此我们只需要匹配 00
、15
、30
和 45
作为 mm
部分。
因此,存储在 $TimeZoneName
中的字符串值现在是 "Mountain Time (US & Canada)"
我需要从 $result
中删除 (UTC-07:00)
。如何做到这一点?
$Result = '(UTC-07:00) Mountain Time (US & Canada)'
使用 -replace
正则表达式运算符:
$Result = '(UTC-07:00) Mountain Time (US & Canada)'
$TimeZoneName = $Result -replace '^\(UTC[+-][01][0-9]:[0134][05]\)\s*'
使用的正则表达式模式描述:
^ # start of string
\( # a literal `(`
UTC # the string `UTC`
[+-] # a `+` or a `-`
[01][0-9]:[0134][05] # a HH:mm timestamp
\) # a literal `)`
\s* # 0 or more whitespace characters
用于时间戳的表达式 ([01][0-9]:[0134][05]
) 可能看起来有点奇怪,但时区偏移量始终以 15 分钟为增量,因此我们只需要匹配 00
、15
、30
和 45
作为 mm
部分。
因此,存储在 $TimeZoneName
中的字符串值现在是 "Mountain Time (US & Canada)"