I am trying to take a string in C++ and find all IP addresses contained inside, and put them into a new vector string.
I’ve read a lot of documentation on regex, but I just can’t seem to understand how to do this simple function.
I believe I can use this Perl expression to find any IP address:
re("\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b");
But I am still stumped on how to do the rest.
Perhaps you’re looking for something like this. It uses
regex_iteratorto get all matches of the current pattern. See reference.Output:
Side note: you probably meant
\\binstead of\b; I doubt you watnted to match backspace character.