正则表达式数范围1-17(regex number range 1-17)

2019-06-26 06:13发布

谁能告诉我如何使用正则表达式1-17之间的匹配数量:

我试图[1-9] | 1 [0-7],但它在18例如火柴8,因为第一部分的。

有任何想法吗? 我不希望有前导零。

编辑:

问题是,我试图验证英国邮政编码想入手:

KW1-17(也可能是KW1,KW2高达KW17)......而这仅仅是外在的一部分。 邮政编码可能KW15 1BM或KW151BM,所以我不能只用锚整个字符串匹配......它变得更加复杂。

Answer 1:

你需要把周围的正则表达式锚或将匹配字符串:

^(?:[2-9]|1[0-7]?)$

我也冒昧,让您的正则表达式多一点效率:



文章来源: regex number range 1-17