Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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结束标记替换为HTML标记+\氮分析_Javascript_Jquery_Regex - Fatal编程技术网

Javascript 将HTML结束标记替换为HTML标记+\氮分析

Javascript 将HTML结束标记替换为HTML标记+\氮分析,javascript,jquery,regex,Javascript,Jquery,Regex,我需要将HTML结束标记替换为HTML标记+\n。我找到了这个 var regex=newregexp(“()”,“gi”); strContent=strContent.replace(regex,“$1\n”) .替换(/\/>/g,“/>\n”); 有人能给我解释一下上面的代码中发生了什么吗?为什么要声明regex然后替换它?每个部分的意思是什么?第一个正则表达式()正在搜索表单或的所有结束标记,并选择标记作为一个组。此组将替换为找到的组和新行 第二个正则表达式,/\/>/正在查找标签的

我需要将HTML结束标记替换为HTML标记+\n。我找到了这个

var regex=newregexp(“()”,“gi”);
strContent=strContent.replace(regex,“$1\n”)
.替换(/\/>/g,“/>\n”);
有人能给我解释一下上面的代码中发生了什么吗?为什么要声明regex然后替换它?每个部分的意思是什么?

第一个正则表达式
()
正在搜索表单
的所有结束标记,并选择标记作为一个组。此组将替换为找到的组和新行


第二个正则表达式,
/\/>/
正在查找标签的最后两个字符,其格式为
\
正在转义第二个
/
。然后将这两个字符替换为相同的字符加上新行

这是正则表达式替换函数

也可以这样写:

strContent = strContent.replace(new RegExp("(</.*?>)", "gi"), "$1 \n   ").replace(/\/>/g,'/> \n    ');
strContent=strContent.replace(新的RegExp(“()”,“gi”),“$1\n”)。replace(/\/>/g,“/>\n”);
这更有意义吗

作者决定单独声明Regex对象,然后稍后引用它作为Replace方法的输入

我只能猜测,但我想这是出于调试的原因

strContent = strContent.replace(new RegExp("(</.*?>)", "gi"), "$1 \n   ").replace(/\/>/g,'/> \n    ');