正则表达式删除每行开头的空格?

时间:2011-04-27 05:32:34

标签: javascript

我想删除每行开头的空格。

我在每行中都有数据,开头有一组空格,所以数据出现在中间,我想删除每行开头的空格。

tmp = tmp.replace(/(<([^>]+)>)/g,"")

如何将^\s条件添加到replace()

3 个答案:

答案 0 :(得分:18)

删除所有前导空格:

str = str.replace(/^ +/gm, '');

正则表达式非常简单 - 一开始就有一个或多个空格。更有趣的位是标志 - /g(全局)来替换所有匹配而不仅仅是第一个和/m(多线),以便插入符号匹配每一行的开头,而不仅仅是字符串的开头。

工作示例: http://jsbin.com/oyeci4

答案 1 :(得分:5)

var text = "          this is a string         \n"+
           "    \t    with a much of new lines     \n";
text.replace(/^\s*/gm, '');

这支持多个不同类型的空格,包括标签。

答案 2 :(得分:1)

如果你只需要移除一个空格,那么这个正则表达式就是你所需要的:

^\s

所以在JavaScript中:

yourString.replace(/(?<=\n) /gm,"");