Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果字符串与上一个标记重复,请从字符串中删除一些HTML标记_Javascript_Html - Fatal编程技术网

Javascript 如果字符串与上一个标记重复,请从字符串中删除一些HTML标记

Javascript 如果字符串与上一个标记重复,请从字符串中删除一些HTML标记,javascript,html,Javascript,Html,我有这样一个字符串: The user have to press the button </br> </br> </br> Then find the right folder </br> </br> </br> Those the correct name. 用户必须按下按钮然后找到 右文件夹名称正确的文件夹。 问题是所有的空间。我只想要一个空间。不知何故,我不得不检查是否有重复的,但我不知道如何检查 我尝试替换所

我有这样一个字符串:

The user have to press the button </br> </br> </br> Then find the 
right folder </br> </br> </br> Those the correct name.
用户必须按下按钮


然后找到 右文件夹


名称正确的文件夹。
问题是所有的空间。我只想要一个空间。不知何故,我不得不检查是否有重复的,但我不知道如何检查

我尝试替换所有html标记,但没有显示任何标记:

htmlstring.replace(/<[^>]*>/g, ' ');
htmlstring.replace(/]*>/g',);
我还尝试替换br标签:

htmlstring.replace(/<[//]{0,1}(B|b)[^><]*>/g,"");
htmlstring.replace(//g,”);
我希望字符串如下所示:

The user have to press the button </br> Then find the 
right folder </br> Those the correct name.
用户必须按下按钮
然后找到 右文件夹
名称正确的文件夹。
对于这个简单的示例,您可以使用:

htmlstring.replace(/((<[^>]*>)\s*){1,}/g, '$1')
htmlstring.replace(/(]*>)\s*{1,}/g,“$1”)
您可以试试这个:

htmlstring.replace(/((<\/br>\s?){2,})/g, '$2')
htmlstring.replace(/((\s?{2,})/g,“$2”)
  • 它只查找包含多个换行符的子字符串-{2,}
  • 它只替换为一个-引用第二组的结果
  • 它在整个字符串中重复执行-g标志

  • 另外,我经常用它来测试我的正则表达式,这是一种信息量大、编写速度快的方法。

    你应该阅读。你的br标记的斜杠位置错误(html5中不再需要斜杠,只有当你的文档设置为xhtml时才在html4中使用斜杠)。此外,你使用了错误的斜杠来逃避斜杠(应该是
    \/
    而不是
    /
    )。此外,您需要的不是{0,1},而是一个
    ,这使得前面的元素是可选的。