如何连接两个正则表达式

时间:2012-01-22 04:55:03

标签: javascript

  

可能重复:
  How can I concatenate regex literals in Javascript?

我手中有两个常客表达。 A和B我想做的是,我的表达式应该以A开头然后以B结束我该怎么做。

A = [^ a-zA-Z]且B = /。+ /;

1 个答案:

答案 0 :(得分:0)

/ *正则表达式有很多方法可以解决 - 此方法忽略第一个表达式中的任何标志, 并且不检查错误 - 整个编写正则表达式更安全, 或者从字符串构建它们。 * /

function mergeRx(start, end){
    start= String(start).substring(1);
    end= String(end).substring(1);
    var rx=/\/([igm]+)?$/,
    flag= end.match(/[igm]+$/) || '';

    start= start.replace(rx, '')+end.replace(rx, '');
    return RegExp(start, flag);
}

var A=/[^a-zA-Z]/, B=/.+/;
mergeRx(A, B)

/*  returned value: (RegExp)
/[^a-zA-Z].+/
*/
相关问题