2010-01-23 107 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