How do you match characters separated by a specific character, lets say ';' and ignore the spaces in front of and behind the match but retain the one inside?
(word1); (word2) ; (word31 word32) Paranteses only denote the matches.
So far I have \s*([a-zA-Z0-9\s]*[a-zA-Z0-9]+)\s*[;] but I don't know how to make the words repeat. And it should also be capable of handling empty words, so something like (word);;(word),(word); ;(word) or (word);(word);. Since it ignores spaces the first two should be equivalent.
Well the main problem is that I don't know how to handle the split and the two options of legit word and empty word since my statement requires at least 1 symbol.
Alternatively it could be solved if I allow repeated separator that has spaces in between, but that loops back to the fact I don't know how to handle the splitting.
Edit: Also i intend to use it in C++
Edit: This is probably it, can i get factcheck? \s*([a-zA-Z0-9\s]*[a-zA-Z0-9]+)[;]*\s*[;]*