2013-02-12 67 views
0

如何刪除'tp。','ta。'和'tta'。從下面從各個地方字符串,其中它是未來使用jquery或Javascript從字符串中刪除常用字符串

str = " tp.FirstName, tp.FamilyName, ta.DOB, tta.TypeOfLocation 
WHERE 

tp.DateStamp BETWEEN '2012-02-12 15:13:00' AND '2013-02-12 15:13:00' 

AND tta.db_name_id =21 
AND 

tp.FirstName = 'Darlene'"; 

我需要如下結果:

FirstName, FamilyName, DOB, TypeOfLocation 
WHERE 

DateStamp BETWEEN '2012-02-12 15:13:00' AND '2013-02-12 15:13:00' 

AND db_name_id =21 
AND 

FirstName = 'Darlene'"; 

注:我也問過同樣的問題,但這次我使用多個去除串。請幫助我

+0

我被嘗試過,但在那裏有錯。現在通過第二個答案是固定的。 – vin 2013-02-13 06:56:05

回答

3

可以試試這個:

str.replace(/(tp\.)|(ta\.)|(tta\.)/g, ''); 

Fiddle:檢查控制檯

+0

這不會起作用,'.'會匹配任何字符。您的輸出將具有'DateSp BETWEEN'而不是'DateStamp BETWEEN'。 – ATOzTOA 2013-02-12 13:59:59

+0

感謝codeparadox,這爲我工作。 – vin 2013-02-13 06:49:02

0

嘗試str.substring(str.indexOf("."))爲字符串中的每個單詞。

-1
var newstring = str.replace(".tp","").replace(".ta","").replace("tta.",""); 

,將工作

+0

替換(與字符串一起使用時)僅替換第一個匹配項。 – Archer 2013-02-12 13:59:21

1

使用此:

str = str.replace(/tp\./g,"").replace(/tta\./g,"").replace(/ta\./g,""); 
2
"aaa tp.bbb tf.ccc tq.ddddd".replace(/[(tp\.)(tf\.)(tq\.)]/g, "") 

    "aaa bbb ccc ddddd" 

但是。正則表達式可能比'正常'字符串操作慢一個數量級。目前有多達10個瀏覽器和5個平臺需要進行測試。很難相信,但這個例子可能會快得多:

 "aaa tp.bbbb tf.ccc".split("tp.").join("").split("tf.").join("") 
    "aaa bbbb ccc" 

嘗試和測試。我會首先在移動瀏覽器上測試非常大的字符串。這一切都取決於哪裏有你是否認爲主要用途將會是。

相關問題