我怎么写一个正则表达式来说,“这个或那个或没有上面的那个?”
基本上,我有字符串myapplication
,myapplication.exe
和myapplication.app
。我怎么写一个匹配所有这些的正则表达式?
对于前两个,我会使用myapplication(.exe)?
。我可以使用myapplication(.exe)?(.app)?
,但这也会匹配myapplication.exe.app
不匹配的内容。
Thoguhts?
答案 0 :(得分:5)
你差不多了。
^myapplication(\.exe|\.app)?$
.
,因为an unescaped period matches any single character. 答案 1 :(得分:0)
要匹配.exe
或.app
或任何内容......匹配.exe
或.app
或任何内容:
^myapplication\(\.exe\|\.app\|)$
或者,取决于您正在使用的正则表达式的风格:
^myapplication(\.exe|\.app|)$
请注意|
和)
之间存在 nothing (也称为空字符串)。