我正在尝试使用正则表达式来匹配以 7 个数字开头的字符串,然后在其中有一个“K”,然后又是 3 个数字。例如:1234567K890。
我目前有$_a -match '^\d{7}K\d{3}'
. 但是,这不适用于我的目的。有没有人有办法解决吗?
我正在尝试使用正则表达式来匹配以 7 个数字开头的字符串,然后在其中有一个“K”,然后又是 3 个数字。例如:1234567K890。
我目前有$_a -match '^\d{7}K\d{3}'
. 但是,这不适用于我的目的。有没有人有办法解决吗?
对此进行了测试,适用于您的示例和其他示例:
$string = "1234567K890"
$string -match '^[0-9]{7}(k)[0-9]{3}$'"
它匹配正好 7 个数字,然后匹配 K(大小写无关紧要),然后正好匹配 3 个数字。字符串开头和结尾的字符限制字符串开头和结尾的空格 - 如果您希望允许空格,您可以删除它们。
这是一个powershell 正则表达式参考,将来可能会有所帮助。
PS C:\> "1234567K890" -match "\d{7}(k)\d{3}"
这\d{7}
匹配 7 个数字,然后(k)
匹配字母 k 并\d{3}
匹配最后三个字符。