{{ info {{ abc}} {{ last}} }} {{ fast}}
在這個字符串中,我需要提取數據,使起始和結束括號平衡。即,在這種情況下,我會使用需要Java正則表達式:選擇均衡括號數據
{{ info {{ abc}} {{ last}} }}
{{ fast}}
正則表達式IM目前
(\\ {\\{.*\\}\\}) *
,但它給我的整個字符串而不是一個我期待。如何正確地做到這一點?
String line="{{ Infobox {{aks}} {{ska}} }} akshat {{ las}}";
String pattern;
System.out.println(line);
Pattern r=Pattern.compile("(\\{\\{.*\\}\\})*");
Matcher m=r.matcher(line);
輸出是整串......不是我預期
(至少不是Java正則表達式。PHP/Perl的/ .NET正則表達式引擎*可以*做遞歸匹配)。無論如何,目前使用的實際正則表達式引擎都不限於常規語法,因此規律性不再是一個標準。 –
但是,這對於Java正則表達式是正確的。 –
那麼還有其他方法可以做到嗎? –