Javascript 带&;无属性

Javascript 带&;无属性,javascript,Javascript,在正则表达式的帮助下,我正在编写一个简单的替换字符串。我想在每个标记中添加一个新属性,如“isElm”。请参考下面的提琴。如果我使用regex作为/(.*)/g并使用replace,则它可以工作,但如果标记具有属性,则它不能工作。但是,如果我使用这个正则表达式:/]*)>(.*)/g,replace-with属性可以工作,但是如果没有标记,它就不能工作。我想找到一个通用的解决方案。以下是两种情况: one应更改为one 两个应更改为 请注意,对于上述两种情况,将在替换后添加isElm=“true

在正则表达式的帮助下,我正在编写一个简单的替换字符串。我想在每个
标记中添加一个新属性,如
“isElm”
。请参考下面的提琴。如果我使用regex作为
/(.*)/g
并使用replace,则它可以工作,但如果
标记具有属性,则它不能工作。但是,如果我使用这个正则表达式:
/]*)>(.*)/g
,replace-with属性可以工作,但是如果没有
标记,它就不能工作。我想找到一个通用的解决方案。以下是两种情况:

  • one

    应更改为

    one

  • 两个

    应更改为

  • 请注意,对于上述两种情况,将在替换后添加
    isElm=“true”
    属性。我不想创建DOM或jQuery对象。由于一些限制,我不得不使用正则表达式


    Fiddle Link:-

    我不确定您为什么要将其过度复杂化(可能需要匹配整个
    ),但您可以完成以下任务

    var x = '<p>this is text</p>';
    x = x.replace('<p', '<p isElm="true" ');
    console.log(x);
    
    var x='这是文本;
    
    x=x.replace('停下来读一会儿,然后相应地格式化内联代码。我刚刚意识到我正在格式化,但由于您在哪里进行了格式化,我无法保存编辑。请注意,在以后的参考中,您没有包含JSFIDLE示例,即使您引用了它(您添加了一个链接,但这是到的,所以我将其删除)。改为使用DOM(当使用JS时,您通常已经有了DOM)。顺便说一句,
    isElm
    不是有效的HTML属性。Ejay这是硬代码&不是通用的。我刚刚意识到在正则表达式中存在空间问题,我想我必须添加“或”运算符,我不知道该如何操作。如果有人感兴趣,可以查看它,使用更新的fiddle,字符串中任何位置带有和不带属性的所有p标记都将添加新属性“isElm”。fiddle Link=>