Javascript 尖括号(<;或>;)在正则表达式中是否特殊?

Javascript 尖括号(<;或>;)在正则表达式中是否特殊?,javascript,regex,Javascript,Regex,我试图让正则表达式接受作为外部分隔符,以获取它们之间的所有内容 如此满足 < tfdsfa > 应该抓住 我必须避开字符还是什么 由我的脚本生成的正则表达式: /<[^(>)]*>/g /)]*>/g 文件中的代码: data.method.highlight = function() { var x = data.syntax, text = data.$.span.html(); for (var i=0, len =

我试图让正则表达式接受<和>作为外部分隔符,以获取它们之间的所有内容

如此满足

< tfdsfa  >

应该抓住

我必须避开字符还是什么

由我的脚本生成的正则表达式:

/<[^(>)]*>/g
/)]*>/g
文件中的代码:

data.method.highlight = function() {
    var x = data.syntax,
        text = data.$.span.html();
    for (var i=0, len = x.length; i < len; i++) {
        var rx;
        if (x[i].range) {
            rx = new RegExp(x[i].tag[0] + "[^(" + x[i].tag[1] + ")]*" + x[i].tag[1], "g");
            console.log(rx);
        }
        else {
            var temprx = x[i].tag[0];
            for (var z = 1; z < x[i].tag.length; z++) {
                temprx += "|" + x[i].tag[z];
            }
            rx = new RegExp(temprx, "g");
        }
        text = text.replace(rx,function (match) {
            console.log("looping - range");
            return '<span class="' + x[i].class.default + '">' + match + '</span>';
        });
        data.$.span.html(text);
    }
};
data.method.highlight=function(){
var x=data.syntax,
text=数据。$.span.html();
对于(变量i=0,len=x.length;i无论是
都不是正则表达式中的元字符

这对我很有用:

'<foo> and <bar>'.match(/<[^>]*>/g); // ["<foo>", "<bar>"]
“and.”匹配(/]*>/g);//["", ""]

当您尝试将结果插入HTML时,浏览器认为它不是有效的HTML标记,就像您的正则表达式一样,您可能会遇到问题。你到底没能实现什么?在开发正则表达式的任何时候都可以使用这个工具:你能展示一下你是如何使用这个表达式的吗?对我来说很有用:如果你有一个
的机会,你能看看我所做的编辑吗。当我在jsfiddle中运行正则表达式时,它会工作,但在脚本中不会。知道这是怎么发生的吗?@MikeDepies,
console.log(rx)
的输出是什么?更具体地说,您发送给RegExp构造函数的精确字符串是什么?
text
的精确值,以及结果与预期值的比较?由于您询问了文本值最终是什么,所以解决了这个问题。文本正在将<字符转换为其html特殊字符计数器部分。我应该在发帖之前好好考虑一下。非常感谢。