2015-08-14 40 views
-2

我有字符串,我想在其中找到2個單詞:STARTEND獲取2個單詞之間的字符串,其中包含他的這個單詞

STARTEND一直走到了一起(也許我將有另一個字符之間,但如果我有START,我會END太)。我可以有另一對STARTEND

我嘗試使用regEx來源找到第一個START而不是他自己的END,它將返回它們之間正確的子字符串。


這裏是我所需要的正則表達式圖:

(我需要得到第一START之間的串到最後END

regExp diagram

+2

你昨天問同樣的問題。爲什麼要重複同樣的問題?如果您有需要添加的內容來澄清,請編輯您現有的問題。 – Abhitalks

+0

爲什麼使用正則表達式呢? –

+0

@Abhitalks沒有人理解我,所以我寫了一個新的,這可能會讓人更好地理解我。 如果我只是更新它,可能沒有人閱讀過更新。 – ldoroni

回答

0

首場比賽以下正則表達式是你的字符串。

正則表達式:

[^start](.*)(end){1} 

的JavaScript:

// returns "start end " 
'start start end end'.match(/[^start](.*)(end){1}/)[1] 

例子:https://regex101.com/r/qO2mS5/2

1

我只想用簡單的JS的indexOf和lastIndexOf,而不是一個正則表達式:

var outerText = 'something test start something else some more test start end some more end some more' 
var s = outerText.indexOf("start"); 
var e = outerText.lastIndexOf("end"); 

var innerText = outerText.substring(s+5, e); 
+0

但如果我將這個字符串'START END END',我不會有正確的字符串。看看我添加的圖表 – ldoroni

+0

在這種情況下,第一個START和最後一個END之間的字符串是'END',你想要嗎? –

相關問題