我写了一个非常简单的正则表达式,需要匹配下一个模式:
word.otherWord
- Word必须至少有2个字符,并且不能以数字开头.
我写了下一个表达式:
[a-zA-Z][a-zA-Z](.[a-zA-Z0-9])+
Run Code Online (Sandbox Code Playgroud)
我使用Regex测试器测试它,它似乎在大多数情况下工作,但当我尝试一些以'e'结尾的输入时,它不起作用.
例如:
Hardware.Make不起作用,但Hardware.Makee工作正常,为什么?我该如何解决?

那是因为你的正则表达式寻找长度均匀的输入.
您有两个匹配的字符[a-zA-Z][a-zA-Z],然后另外两个字符匹配(.[a-zA-Z0-9])作为一个重复一次或多次的组(因为+).
你可以在这里看到它:http://regex101.com/r/fW2bC1
我想你需要那个:
[a-zA-Z]+(\.[a-zA-Z0-9]+)+
Run Code Online (Sandbox Code Playgroud)