2013-10-10 146 views
0

我有一個字符串,我需要分裂在JavaScript var str ='聯想基本G500s(59-388254)筆記本電腦(第3代Ci5/8GB/1TB/DOS/2GB圖)(免費攜帶包)(黑色)' ;如何在第n次出現字符後拆分字符串?

我需要檢索只是「聯想基本G500s(59-388254)筆記本」 即,我應該能夠「(」字符的第二次出現後的字符串分割。

我已經使用了嘗試.split()函數,但我不能夠指定的位置。 請幫助。

回答

2
var str = 'Lenovo Essential G500s (59-388254) Laptop (3rd Gen Ci5/ 8GB/ 1TB/ DOS/ 2GB Graph) (Free carry bag) (Black)'; 

    var firstBracket = str.indexOf('('); 
    var secondBracket = str.indexOf('(', firstBracket+1) 
    str.substring(0, secondBracket); 

這會給你你正在尋找的部分。

對於一個更通用的解決方案,請參閱現有的答案:How to get the nth occurrence in a string?

+1

OP是要求第n次出現。這隻適合n = 1的一個例子(假定從零開始的索引)。 – Boaz

+1

他要求「第二次出現」('字符'),我看不到第n次出現的問題。 –

+0

我會添加Google快速顯示的現有問題。 –

1

試試這個:

var str = 'Lenovo Essential G500s (59-388254) Laptop (3rd Gen Ci5/ 8GB/ 1TB/ DOS/ 2GB Graph) (Free carry bag) (Black)'; 

var index = str.indexOf(")"); 

var res = str.substring(0, index +1); 

alert(res); 

乾杯

相關問題