2013-05-13 73 views
0

我有一个javascript函数 我的字符串看起来像一些正则表达式的问题...value.replace正则表达式需要帮助与JavaScript函数

[空格] SomeString [空格] [Tab]键SomeString [空间] [Tab]键[LINEBREAK]

SomeString [LINEBREAK]

[空间] SomeString [空格] [Tab]键SomeString [空格] [Tab]键[LINEBREAK]

SomeString [LINEBREAK]

我想删除[标签] [换行符],但保留[换行符]所以我的产出将是

[空格] SomeString [空格] [Tab]键SomeString [空格] SomeString [换行符]

[空格] SomeString [空格] [Tab]键SomeString [空格] SomeString [换行符]

我曾尝试:

value.replace(/\t\n/g, ''); 

,但没有工作,我也尝试:

value.replace(/\s+/g, ''); 

但去掉了所有的换行符

谁能帮助吗? 感谢

+0

我终于解决了它谢天谢地! 你不会相信这个,但代码一直很好。我在PHP中回应了脚本,它将/ t和/ n转换为制表符,并在我的源代码中断,所以难怪它没有工作。哈哈哈。感谢所有帮助你们。 – FoxyFish 2013-05-14 15:19:02

回答

2

这将这样的伎俩

str.replace(/\t(\r\n|\r|\n)/g,''); 

这里是一个demo fiddle

编辑:

str = str.replace(/^\s|\t([\r\n]+)|([\r\n]+)\t|\s$/g,''); 

这里是"upgraded" example

+0

这将删除标签和换行符。 – Martijn 2013-05-13 15:17:53

+0

没错,tab + break会被移除,但不是前面tab的中断不会。 – alexbusu 2013-05-13 15:23:16

+0

这里是一个[更新的小提琴](http://jsfiddle.net/9fC4K/2/) – alexbusu 2013-05-13 15:29:03