用正则表达式匹配数字块

Match blocks of numbers with regular expression

我四处搜索,找不到问题的答案。

我有一系列数字需要匹配,它可以是这些数字中的任何一个,但它必须是未部分匹配的数字的完全匹配,见下文:

要匹配的号码:

4 46 64

现在如果我有数字 48,正则表达式应该会失败,因为数字 48 不存在。例如,我的正则表达式似乎匹配所有数字 4,这是我的问题。

正则表达式:

/4|46|64/g

要匹配的文本是:

48

结果:

0-1: 4

在在线正则表达式测试器上查看我的示例:

https://regex101.com/r/QPUsqa/1

提前致谢。

只需添加锚点^$即可修改为:

^(?:4|46|64)$

Click for Demo

解释:

  • ^ - 断言字符串的开头
  • (?:4|46|64) - 匹配 44664
  • $ - 断言字符串结束