2016-09-17 20 views
0

這是我的文字:如何使用RegEx從其他文本中提取包含文本的多行和空白空間?

[[> 
Check this out! 

And also this one! 

Well, I also have this 
[[MyVariable>5:15]] 

我想提取:

Check this out! 

And also this one! 

Well, I also have this 

MyVariable 

5:15 

當它只是[[MyVariable>5:15]]我可以使用此RegEx提取值:/\[\[(.*)\]\]/g。但是,我無法獲得以[[>開頭的多行版本。

我試過\[\[\>(\s\S)\]\]沒有運氣。

我如何得到我想要的?

(我使用JavaScript)

+0

'\ [[[[] [\ s \ S] *?\] \]' – revo

回答

0

我看到[[..>..]]作爲你需要處理它的結構。如果你想之前和>後捕捉一切:

\[\[([^>]*)>([^[\]]*) 

Live demo

+0

你好雷沃,謝謝你的回覆!其實,我的結構就像'[[> ...]]''。但它裏面也有'[[MyVariable> 5:15]]結構。但是,正如你所看到的,兩個結構是嵌套的,它們不是分開的。我的意思是,關閉']]'用於內部結構和外部結構。 – scaryguy

+0

你知道嗎?我甚至更喜歡'[[MyVariable> 5:15 ... ]]結構,但我認爲它可能會更難。如果您認爲這很容易,我可以更新這個問題?在'5:15'部分之後,在這種情況下應該會有一條新線路。如果您願意,我還可以將其作爲一個新問題提出。當然,我也應該能夠提取'MyVariable> 5:15'部分。 – scaryguy

+0

請在您的問題中添加一個更具說明性的示例輸入,並輸入要捕獲的所需部分。請說明可能會發生多少嵌套關卡。 @scaryguy – revo

0

我認爲你在尋找這樣的事情。

/([^\[\[>]*)[A-Za-z0-9]([^>[\]]*)/g 

如果你還沒有聽說過它,regexr是試驗正則表達式一個很酷的地方。

相關問題