2017-07-04 106 views
1

想要從字符串「申請2項保險」後得到第一個單詞。獲取匹配詞後的下一個單詞在Javascript中

var Number = 2; 
var text = "Apply for 2 insurances or more"; 

在這種情況下,我想找到Number後的字符串,所以我的預期結果爲:「保險」

+0

更好的將是打破串入陣然後匹配,一旦匹配(假設數組[i]),然後獲得數組[i + 1] – noobcode

回答

1

呦ü可以簡單地使用正則表達式號之後拿到的第一個字,就像這樣......

var number = 2; 
 
var text = "Apply for 2 insurances test"; 
 
var result = text.match(new RegExp(number + '\\s(\\w+)'))[1]; 
 

 
console.log(result);

+1

謝謝。它的作用就像魅力 –

+0

如果短劃線( - )被認爲是單詞的一部分,這似乎不起作用。 – Mabz

1

findIndex一個解決方案,該號碼後得到只有兩個字:

var number = 2; 
 
var text = "Apply for 2 insurances or more"; 
 
var words = text.split(' '); 
 

 
var numberIndex = words.findIndex((word) => word == number); 
 
var nextWord = words[numberIndex + 1]; 
 

 
console.log(nextWord);

+0

@UROY我明白了!看看我更新的答案。增加了一個新的解決方案,在這種情況下:) –

0

var number = 2; 
 
var sentence = "Apply for 2 insurances or more"; 
 

 
var othertext = sentence.substring(sentence.indexOf(number) + 1); 
 
console.log(othertext.split(' ')[1]); 
 

 
//With two split 
 
console.log(sentence.split(number)[1].split(' ')[1]);