How could I find string between [[ ]]? After searching a answer I find this method below, but I cannot find the regular expression for [[ ]], neither for {{ }}.
What I want to do is to find e.g. [[abc]]XXXXXXXXXX[[def]], and save abc, def as a ArrayList.
String s = "[[abc]]XXXXXXXXXX[[def]]";
Pattern p = Pattern.compile("[[(.*?)]]")
Matcher m = p.matcher(s);
if (m.find()) {
System.out.println(m.group(i)); // => "abc","def"
}
You must double escape the opening square brackets (you can do the same with the closing) since they are used to define character classes:
Pattern p = Pattern.compile("\\[\\[(.*?)]]");
(exactly the same with curly braces, that are used for quantifiers)
You can read this fabulous post about the incredible world of square brackets.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With