繁体   English   中英

全部替换后如何检查字符串是否为空<br>在 javascript 中?

[英]How to check the string is empty after replace all <br/> and &nbsp; in javascript?

我正在尝试使用正则表达式替换所有<br />标签和&nbsp; ckeditor 数据中的字符并验证它是否为空将提示错误。 但不知何故,如果我在 ckeditor 中多次按 Enter 键,它将生成多行,内容如下:

<br />
<br />
<br />
<br />
<br />
&nbsp;

我编写了这段代码并尝试控制台输出结果,但它打印出类似带有换行符的空白字符串,而不是<empty string> 我的代码有什么问题吗?

 var str = "<br />\n"+ "<br />\n"+ "<br />\n"+ "<br />\n"+ "<br />\n"+ "&nbsp;"; str = str.replace(/(&nbsp;)*/gm,''); str = str.replace(/^\s*$/gm,''); str = str.replace(/<br\s*\/?>/gm, ""); console.log(str);

最后,我找到了解决方案。 我还必须删除字符串中的\n ,代码才能正常运行。

str = str.replace(/\n/gm,'');

您不会在每个<br/>之后替换换行符。

您可以通过将空行的替换移到删除<br/>解决此问题

 var str = `<br /> <br /> <br /> <br /> <br /> &nbsp;`; str = str.replace(/(&nbsp;)*/gm,''); str = str.replace(/<br\s*\/?>/gm, ""); str = str.replace(/^\s*$/gm,''); console.log(JSON.stringify(str));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM