无法使用Javascript替换方法删除textarea中的空换行符

时间:2012-11-03 01:38:10

标签: javascript replace textarea

当我将以下内容粘贴到文本区域时,当onblur时,它应该整理粘贴的文本,删除某些单词,制表空间并将每个由制表符空格分隔的值放入其自己的行中进行整理。但它总是在第一行留下一个空白的空行:

注意:我似乎无法模仿html中的制表符空格,因此您必须在记事本中手动键入以下内容以正确复制我的问题:%%%替换为记事本中的制表符空格然后选择 - 全部并复制/粘贴到我的js fiddle example textarea

  Customer account %%% Name %%% Telephone   %%%  Street name %%% City %%% postcode%%% 1234LA3 %%% KCI ASDFGHJ %%% 1234567890 %%% 10 EXAMPLE ST %%% EXAMPLE CITY %%% 1234    

当你onblur 最终看起来像这样:


1234LA3 
KCI ASDFGHJ 
1234567890 
10 EXAMPLE ST 
EXAMPLE CITY 
1234

注意'1234LA3'上方的空白空格。

我已经尝试在我的.replace()方法中添加\ n \ r,但似乎仍然没有过滤掉这一空行。

任何形式的帮助将不胜感激。谢谢!

3 个答案:

答案 0 :(得分:3)

value=value.replace(/^(\r\n)|(\n)/,'');

似乎可以做到这一点。

DEMO

此外,您可以使用	模拟html中的制表符,更不用说您不需要在javascript:的事件中使用javascript作为前缀。

答案 1 :(得分:2)

或者只是在第一次替换后添加\ t:

value=value.replace(/(Customer account\t|Name\t|Street name\t|Telephone\t|City\t|postcode\t|Extension\t)/g,'');

问题出现了,因为你在最后一个标题后面有一个标签。

答案 2 :(得分:0)

如果你这样做,正则表达式会这样工作:

str.replace(/^$/m, '');  

是?有人为我检查这个问题吗?