什么是JavaScript正则表达式<;br/>;什么时候是HTML编码的?
JavaScript:什么是JavaScript正则表达式<;br/>;什么时候是HTML编码的?,javascript,regex,Javascript,Regex,JavaScript:br/HTML编码版本的正则表达式是什么 var edit_text = $(".edit_area").html().trim(), regex = /<br\s*[\/]?>/gi; //This needs replacing $(".edit_area").html(edit_text.replace(regex, "\n")); var edit_text=$(“.edit_area”).html().trim(), regex=//gi
br/
HTML编码版本的正则表达式是什么
var edit_text = $(".edit_area").html().trim(),
regex = /<br\s*[\/]?>/gi; //This needs replacing
$(".edit_area").html(edit_text.replace(regex, "\n"));
var edit_text=$(“.edit_area”).html().trim(),
regex=//gi//这需要更换
$(“.edit_area”).html(edit_text.replace(regex,“\n”));
您的模式将与编码的
元素不匹配,因为它的普通
)结束字符。您可以使用如下模式扩展此功能以处理这两个问题:
regex = /(<|<)br\s*\/?(>|>)/gi;
regex=/(|)/gi;
你可以测试一下。@sansix我已经包括了一个解释以及代码完整性的演示。+1是的,现在它清楚地解释了事情-顺便说一句,我们是否也应该关心这个案例“
”?我的意思是/and>@sansix之间的空间你需要能够处理
/
之前的空格,例如
,但是我认为您不需要担心/
和
之间的空格。我不相信
是有效的HTML或XHTML。(当然OP可能希望匹配,尽管它无效,但问题中没有指定)@sansix说到测试用例,一个br
元素可能有属性,例如
,或者配对
。如果要处理所有可能的有效情况,通常最好将字符串作为DOM/XML片段进行解析,然后分析生成的树——正则表达式对于大多数高级任务来说还不够复杂。
regex = /(<|<)br\s*\/?(>|>)/gi;