在两个字符串之间提取字符串

时间:2013-12-11 16:17:39

标签: javascript regex

我有以下问题:

var previous_state = response.match(simulator.previousStateString+"(.*?),");             
if( ! previous_state ) {response.match(simulator.previousStateString+"(.*?) ")};
if( ! previous_state ) {response.match(simulator.previousStateString+"(.*?)#")};

基本上,我在simulator.previousStateString和','或''或'#'之间寻找一个字符串。 是否有可能拥有更紧凑的代码? 我的意思是,我可以将所有3个正则表达式都放在一个吗?

由于

1 个答案:

答案 0 :(得分:7)

当然,您可以将此正则表达式与character class

一起使用
response.match( new RegExp(simulator.previousStateString + "(.*?)[, #]") ); 

它只匹配[ and ]

中的几个字符中的一个

PS:确保simulator.previousStateString

中没有特殊的正则表达式字符