如何删除前导和给定的HTML字符串尾随空格?如何删除前导和给定的HTML字符串尾随空格?(How t

2019-05-13 11:12发布

我有以下的HTML字符串。 什么是示例代码在JavaScript中删除前导和从该字符串尾随空格?

<p>&nbsp;&nbsp;</p>
<div>&nbsp;</div>
Trimming using JavaScript<br />
<br />
<br />
<br />
all leading and trailing white spaces
<p>&nbsp;&nbsp;</p>
<div>&nbsp;</div>

Answer 1:

看到字符串方法trim() - https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/Trim

var myString = '  bunch    of <br> string data with<p>trailing</p> and leading space   ';
myString = myString.trim();
// or myString = String.trim(myString);

编辑

正如在其他评论中指出,它可以使用正则表达式的方法。 该trim方法有效地仅仅是一个正则表达式的别名:

if(!String.prototype.trim) {  
  String.prototype.trim = function () {  
    return this.replace(/^\s+|\s+$/g,'');  
  };  
} 

...这将注入的方法到原生原型为这些浏览器谁是在游泳池的浅水区游泳依然。



Answer 2:

var str = "  my awesome string   "
str.trim();    

对于旧的浏览器,使用正则表达式

str = str.replace(/^[ ]+|[ ]+$/g,'')
//str = "my awesome string" 


Answer 3:

string.replace(/^\s+|\s+$/g, "");


Answer 4:

如果你正在使用一个多行字符串的工作,就像一个代码文件:

<html>
    <title>test</title>
    <body>
        <h1>test</h1>
    </body>
</html>

而要更换所有领先的线,得到这样的结果:

<html>
<title>test</title>
<body>
<h1>test</h1>
</body>
</html>

您必须将添加multiline标志您正则表达式, ^$一行匹配行:

string.replace(/^\s+|\s+$/gm, '');

相关报价从文档 :

“m”个标志表示一个多行输入的字符串应该为多行进行处理。 例如,如果“m”是所使用的,“^”和“$”从仅在起动或整个字符串的字符串中的任意行的开始或结束的端部匹配的变化。



Answer 5:

我知道这是一个非常古老的问题,但它仍然没有一个公认的答案。 我看到你想要的以下删除:是“空”和基于HTML字符串空格html标签。

我想出了基于你正在寻找的输出您的评论的解决方案:

Trimming using JavaScript<br /><br /><br /><br />all leading and trailing white spaces 

 var str = "<p>&nbsp;&nbsp;</p><div>&nbsp;</div>Trimming using JavaScript<br /><br /><br /><br />all leading and trailing white spaces<p>&nbsp;&nbsp;</p><div>&nbsp;</div>"; console.log(str.trim().replace(/&nbsp;/g, '').replace(/<[^\/>][^>]*><\/[^>]+>/g, "")); 

.trim()移除前导和结尾的空白

.replace(/&nbsp;/g, '')除去&nbsp;

.replace(/<[^\/>][^>]*><\/[^>]+>/g, "")); 删除空标签



Answer 6:

var trim = your_string.replace(/^\s+|\s+$/g, '');


Answer 7:

01)。 如果你只需要开头和结尾的空白使用删除此:

var address = "  No.255 Colombo  "
address.replace(/^[ ]+|[ ]+$/g,'');

这将返回字符串“科伦坡255号”

02)。 如果您需要删除所有的白空间使用:

var address = "  No.255 Colombo  "
address.replace(/\s/g,"");

这将返回字符串“No.255Colombo”



文章来源: How to remove leading and trailing white spaces from a given html string?