如何将这个正则表达式的一部分应用于所有替代方案?

时间:2016-06-09 21:58:18

标签: javascript regex

我必须写一个正则表达式,其中包含单词“wind”,“temp”或“press”后跟非数字。

到目前为止,我有:

var regex = /wind|temp|press[^0-9]{0,}/;

这不起作用,因为[^0-9]{0,}是“按”。我如何将它们分开以便所有单词都被读取后跟一个非数字?

2 个答案:

答案 0 :(得分:3)

只需使用(非捕获)组:

var regex = /(?:wind|temp|press)[^0-9]{0,}/;

答案 1 :(得分:1)

您需要的只是一个无捕获组,用于将这些单词与其余模式分开。使用这种模式:

/(?:wind|temp|press)\D*/

在这种情况下,{0,}*相同。此外,如果必须使用非数字字符,则可能需要使用+(我的意思是,如果其中一个单词必须后面跟着至少一个或多个非数字字符,那么请使用+

Online Demo