如何使用Powershell提取主机名中两组数字之间的字母内容
PowerShell提取主机名两组数字间纯字母实现方案
直接使用正则匹配即可满足所有约束条件,实现代码如下:
# 获取本机主机名 $computerName = $env:COMPUTERNAME # 匹配两组1-2位数字中间的纯字母内容 if ($computerName -match '\d{1,2}([a-zA-Z]+)\d{1,2}') { $result = $matches[1] } else { $result = $null }
- 正则规则完全适配约束:
\d{1,2}匹配1位或2位数字,([a-zA-Z]+)捕获中间连续纯字母,会自动跳过数字前后任意长度的非数字内容,无需提前处理前后冗余字符 - 匹配成功后结果直接存入
$result变量,未匹配到符合规则的内容时变量为空值,可按需调整默认值
验证示例:
输入测试主机名:abcd1efghij12kl
输出$result结果:efghij,完全符合预期
内容的提问来源于stack exchange,提问作者Tom Donnly
相关产品推荐
相关产品推荐

