2013-02-14 83 views
0

我想獲取兩個子串之間的字符串。獲取兩個子串之間的字符串

例如:

代碼:

'{{something}} Space {}} Space2 {{}}'.match(/{(.*?)}/g) 

我希望它是:

['{something}','}','{}'] 

但它返回:

['{{something}','{}','{{}'] 
+0

那麼你想如何區分你的首選響應和返回的,比如'['{something}} Space {}} Space2 {{}' ]'作爲迴應?也就是說,在括號內允許的內部不允許的內容是什麼?它是空間角色嗎? – 2013-02-18 13:18:13

回答

2

這看起來像它會得到在這種情況下你想要的答案是,但一般情況下我不是很清楚:

'{{something}} Space {}}'.match(/{([^{]*?)}/g) 
+0

對於更通用的情況下,你可能想要使用'(?<= {)(。*?)}'作爲這裏提供的正則表達式不會正確匹配某些東西像這樣的{{{something}} Space {{([^ { *?)}}' – 2013-02-14 19:14:05

+0

我找到了解決方案我的問題 – Mathematica 2013-02-19 15:31:38

+0

小心分享該解決方案? – 2013-02-19 15:37:19

相關問題