如何使用javascript正则表达式从文本中删除项目符号

时间:2011-06-24 14:21:50

标签: javascript regex

我只是想从文本中删除项目符号。例如,当我将项目符号文本列表从MS Word复制到任何文本框时,它会与子弹一起显示。有人可以告诉我如何删除任何类型的子弹并用“”替换它 我从不同的来源找到了这个代码,但它们并不适合我。

 var x="  1.     15-20 years  ";
 x.replace('•\t.+', '');
 alert(x); // i want out put as 15-20 years

谢谢。 : - )

5 个答案:

答案 0 :(得分:2)

请尝试使用此声明......

x.replace(/[•\t.+]/g, '');

答案 1 :(得分:1)

我认为这符合您的需求。 http://jsfiddle.net/ksSG8/

 var x="  1.     15-20 years  ";
 x = x.replace(/\s\d\.\s*/, '');
 alert(x);

许多答案和代码中缺少的一部分是:

x = x.replace(...);

如果不将其分配回x,则x永远不会接收从replace()函数返回的值。

答案 2 :(得分:0)

你看到x中的任何一个吗?不,所以你无法取代它。要实现您的目标,请使用:

x.replace(/^\s*[0-9]+\.\s*/, '');

enter image description here

正则表达式的作用基本上是删除任何[number].,以及它之前和之后的任何空格,所以剩下的就是你需要的文本。

答案 3 :(得分:0)

x= x.replace(/^\s*\d+\.\s*/, ''); // strings are immutable

答案 4 :(得分:0)

此解决方案在文本行的开头找到项目符号和编号项,然后将其删除。

var x="  1.     15-20 years  ";
x.replace(/^\s*(?:[••••]|\d+)\.\t/, '');
alert(x); // i want out put as 15-20 years

我认为您正在尝试替换子字符串,而不是使用正则表达式替换。