How to match a substring within 2 square brackets using RegEx in Java

1 Answer

0 votes
import java.util.regex.Pattern;
import java.util.regex.Matcher;
import java.util.ArrayList;
import java.util.List;

public class Program {
    public static void main(String[] args) {
        String input = "This is a [sample] string with [multiple] square brackets.";
        List<String> extracted = extractBracketedContent(input);

        for (String item : extracted) {
            System.out.println(item);
        }
    }

    public static List<String> extractBracketedContent(String text) {
        List<String> result = new ArrayList<>();
        String pattern = "\\[(.*?)\\]";
        
        Pattern regex = Pattern.compile(pattern);
        Matcher matcher = regex.matcher(text);

        while (matcher.find()) {
            result.add(matcher.group(1));
        }

        return result;
    }
}



/*
run:
  
sample
multiple
     
*/

 



answered Jul 19, 2025 by avibootz
...