Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,845 questions

51,766 answers

573 users

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

1 Answer

0 votes
#include <iostream>
#include <string>
#include <vector>
#include <regex>

std::vector<std::string> extractBracketedContent(const std::string& text) {
    std::vector<std::string> result;
    std::regex pattern(R"(\[(.*?)\])");
    
    auto words_begin = std::sregex_iterator(text.begin(), text.end(), pattern);
    auto words_end = std::sregex_iterator();

    for (std::sregex_iterator i = words_begin; i != words_end; ++i) {
        result.push_back((*i)[1].str());
    }

    return result;
}

int main() {
    std::string input = "This is a [sample] string with [multiple] square brackets.";
    std::vector<std::string> extracted = extractBracketedContent(input);

    for (const auto& item : extracted) {
        std::cout << item << std::endl;
    }
}



/*
run:

sample
multiple

*/

 



answered Jul 19, 2025 by avibootz
...