2012-03-31 98 views
0

現在我真的應該可以閱讀正則表達式了,但任何人都可以談論我通過這個?這個正則表達式符合什麼? /([^「^ s] +) s * |」([^「] +)」 s */g

/([^"^\s]+)\s*|"([^"]+)"\s*/g 

只是爲了背景;它在Alfresco中用於匹配文檔標籤。有沒有一個網站可以插入這些網站並獲得解釋(除了SO之外)!

+1

雖然這個問題確實對訪問者不會有用,但這是因爲他們無法搜索它;正則表達式對於很多應用程序非常有用(特別是如果通過添加引號轉義來改進它)。 – Blindy 2012-03-31 13:48:12

回答

2

它或者匹配一個標識符(不包含",^或者任何類似空格的字符 - 空格,製表符,新行)或者引號之間的內容,或者後面跟有任意數量的空格。

6
(  # start a capture group 
[^"^\s]+ # one or more characters NOT quote, caret, or white space 
)  # close capture group 
\s*  # followed by optional white space 
| # either match everything before this '|' or everything after it 
"  # match a quote character 
(  # start capture group 
[^"]+ # one or more characters NOT quote 
)  # close capture group 
"  # the closing quote 
\s*  # followed by optional white space 

那麼作爲Blindy說,它要麼沒有「^」,報價,或空格,或者,兩個引號字符之間的匹配一切字符串匹配。它可以節省它在反向引用中找到的東西(我稱之爲'組',因爲我的Python被困在腦中)。

+0

正則表達式使開發人員更緊密地合在一起很有趣,我的C#版本在我的腦海中停滯不前! – Blindy 2012-03-31 14:09:48

+0

C#小調正則表達式套件,我想? :) – alan 2012-03-31 14:47:21

+0

我不用聽起來就可以唱歌就能唱歌! – Blindy 2012-03-31 15:00:00

相關問題