We come across so many examples of regular expressions on the internet that promote unnecessary capturing groups. If we are not extracting any substring or not using a group in backreferences, then it is better to avoid capturing groups by using one or more of the following ways:
- We can use character classes in certain cases. Consider the following capturing group:
(a|e|i|o|u)
So, instead of using the preceding regex, we can use the following:
[aeiou]
- We can use a non-capturing group by placing a ?: at the start of the group. Consider the following regex:
(red|blue|white)
Instead of the previous regex, we can use the following:
(?:red|blue|white)
- To write a regex ...