2012-02-12 184 views
0

我想問,因爲我看,它的具體和無法找到其他線程。紅寶石報價正則表達式

我想製作一個正則表達式,它將捕獲兩個引號和引號之間的所有內容以及周圍的內容。

,如:「插入的任何字符串這裏(可包含」「的)」

基本上我想這將需要在它們之間的報價和一切正則表達式線(可以是任何東西)。

所以引用一行內容和任何內容。

我似乎無法弄清楚這一點。

+1

聽起來有點問題。要澄清您所問的內容:即使字符串中有引號,也需要用引號括起來的最大字符串。所以「富」瑪麗「應該匹配作爲富」瑪麗,對嗎? – 2012-02-12 05:33:21

+1

你想要匹配什麼樣的樣本並且不匹配? – Mori 2012-02-12 05:34:43

+0

爲什麼使用正則表達式?可能會比較容易點數,使用堆疊等。 – 2012-02-12 05:36:04

回答

1

我認爲你只是有單引號和雙引號的問題。使用此:

%q{like: "insert whatever string here (which can include " "'s)"}[/".*"/] 
1

從事物的正則表達式的一面,你可以試試這個:

str = %q{uncaptured " captured " " /captured " /uncaptured} 
str[/".*"/] 
#=> "" captured " " /captured "" 

對於非正則表達式的解決方案,你只要找到第一個和最後一個索引並收集子之間:

str[str.index('"')..str.rindex('"')]