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 分钟为增量,因此我们只需要匹配 00153045 作为 mm 部分。

因此,存储在 $TimeZoneName 中的字符串值现在是 "Mountain Time (US & Canada)"