我有一個文本,其變量如[abcderere]
。
爲了檢測這些變量,我決定創建以下正則表達式:一個正則表達式來檢測像「[blablablabla]」
(\[.+?\])
它的工作與像[azerty][qwerty]
字符串,但我希望我的正則表達式也檢測字符串如[[azerty]
,因爲它的模式匹配,但它不」將不起作用
我有一個文本,其變量如[abcderere]
。
爲了檢測這些變量,我決定創建以下正則表達式:一個正則表達式來檢測像「[blablablabla]」
(\[.+?\])
它的工作與像[azerty][qwerty]
字符串,但我希望我的正則表達式也檢測字符串如[[azerty]
,因爲它的模式匹配,但它不」將不起作用
或許這將幫助:
(\[[^\[\]]+\])
^ ^^ ^^^
| || | ||
| |+-----+ ||
| +---------+|
+------------+
給定一個字符串,如[[azerty]
,它會跳過第一個括號搭配[azerty]
。對於字符串[[azerty][foobar]]
它將匹配[azerty]
和[foobar]
。 Demo here。
,對於您認爲它會起作用的情況[[foobar]]? – 2012-04-25 09:12:06
那麼對於'[[foobar]]'你想讓它同時返回'[foobar]'和'foobar'嗎? – Jack 2012-04-25 09:14:18
是的,這正是我想要的;)編輯:對於前面的例子[[azerty] [foobar]]它給了我[azerty](好),但[[foobar]:/ – 2012-04-25 09:16:01
你的正則表達式似乎匹配像「[[azerty]」這樣的字符串。測試它在這裏:http://www.regexplanet.com/advanced/java/index.html和Java本身。你在使用Pattern.compile(「(\\ [。+?\\])」); ? – 2012-04-25 08:40:37
*「我的問題很簡單」*「生命的意義是什麼?」也是一個簡單的問題,這是棘手的答案。問題的簡單性與答案的簡單性無關。 ;) – 2012-04-25 08:40:52
它究竟以什麼方式「不起作用」?它會匹配,因爲'[[azerty]''包含''[azerty]''。 – ArjunShankar 2012-04-25 08:43:59