0

我对 or 操作符有一点小问题

我想寻找

[a-zA-Z]+

其次是

\-[a-zA-Z]?

或者

\'[a-zA-Z]?

基本上抓住任何单词,所以我可以省略:空格、\t\n\n\r。我也明白这\w会很好用,但我不想要这样9-10的结果,我只是在寻找单词。

我知道这(thing|thing2)是 or 的语法,但它只是捕获整个单词,然后作为第二个匹配项,收缩和连字符的后半部分。非常感谢任何帮助,谢谢。

4

1 回答 1

2

您可以为此使用字符类:

[a-zA-Z]+[-\'][a-zA-Z]+

或者,如果你真的想使用or操作符,你可以使用非捕获组(?:)

[a-zA-Z]+(?:-|\')[a-zA-Z]+
于 2013-04-03T00:56:08.033 回答