1

我正在尝试使用正则表达式来匹配以 7 个数字开头的字符串,然后在其中有一个“K”,然后又是 3 个数字。例如:1234567K890。

我目前有$_a -match '^\d{7}K\d{3}'. 但是,这不适用于我的目的。有没有人有办法解决吗?

4

2 回答 2

2

对此进行了测试,适用于您的示例和其他示例:

$string = "1234567K890"
$string -match '^[0-9]{7}(k)[0-9]{3}$'"

它匹配正好 7 个数字,然后匹配 K(大小写无关紧要),然后正好匹配 3 个数字。字符串开头和结尾的字符限制字符串开头和结尾的空格 - 如果您希望允许空格,您可以删除它们。

这是一个powershell 正则表达式参考,将来可能会有所帮助。

于 2013-09-05T14:16:29.537 回答
2
PS C:\> "1234567K890" -match "\d{7}(k)\d{3}"

\d{7}匹配 7 个数字,然后(k)匹配字母 k 并\d{3}匹配最后三个字符。

于 2013-09-05T14:18:01.760 回答