2010-01-23 109 views
2

如何替换/追加something (22)字符串到something,使用某种表达式匹配东西不是常量,它始终不同,但部分(整数)总是相同的。欢呼声javascript正则表达式删除括号中的尾随数字

编辑

我看这事情是有点混乱(我也是)。这是我的意思。我有一个字符串 - 一个字。其中包含阿尔法表达(一个字,任何单词)一个单一的空间开合palenthesis和一个intiger内。现在我想替换空白区,pamentalhesis和里面的整数来替换为空,只留下字符串的alpha部分。

例:

Java (77) 
Javascript (22) 
Car (11) 
Carpet (15) 

正则表达式之后,它应该是这样的:

Java 
Javascript 
Car 
Carpet 

注意,正则表达式是在每个字seperatly进行,我只写了几个例子来使事情变得更加清晰阅读和理解。谢谢

+4

你最好解释'东西的预期格式'。 例如“'something'是单个字母数字单词”,或者“'something'是从数字开始的一个或最多两个单词”。 – 2010-01-23 13:49:52

+0

你的问题表达方式:'s =“something”; s = s +“东西(22)”' – Zano 2010-01-23 13:54:10

+2

Andrea说。现在的答案是:“通过执行”某种“正则表达式或其他字符串操作”就像问题一样好。 :) – 2010-01-23 13:55:05

回答

1

这就是:

var text = "Java (77) Javascript (22) Car (11) Carpet (15)"; 
text.replace(/(\w+) \(\d+\)/g,"$1"); // returns "Java Javascript Car Carpet" 
+0

太好了,那正是我所期待的:D – 2010-01-23 14:16:02

1

假设something为​​,这将转化something (22)something

yourstring=yourstring.replace(/(\w+)\s*\(\d+\)/g,"$1") 

或只是删除号码括号

yourstring=yourstring.replace(/\s*\(\d+\)/g, "") 
+0

嗯,因为我可以读..你假设我的字符串以s开头,我编辑了这个问题,使我的问题更难以解决(我希望).tnx – 2010-01-23 14:06:24

+0

不,它不仅对于字符串以s开头,\ s是包含空格而不是char的空白字符“s” – YOU 2010-01-23 14:23:09