Don't touch an operator that lies alone on a line
Let the C++ nit-picking rules see the open double quote of strings
('([\w\(\)\]]) +(&&|\|\||<=|>=|!=|\|=|==|\+=|-=|\*=|/=|\?|<|>|\+|-|=|/|:|&|\||\*) +([\w\(\)])', '\\1 \\2 \\3'),
# trailing operator, but don't un-trail close angle-braces > nor pointer *, and not before a preprocessor line
('([\w\(\)\]]) +(&&|\|\||<=|>=|!=|\|=|==|\+=|-=|\*=|/=|\?|<|>|\+|-|=|/|:|&|\||\*) +([\w\(\)])', '\\1 \\2 \\3'),
# trailing operator, but don't un-trail close angle-braces > nor pointer *, and not before a preprocessor line
- (' (::|&&|\|\||<=|>=|!=|\|=|==|\+=|-=|\*=|/=|\?|<|\+|-|=|/|:|&XXX|\||\*XXX) *\n( *)([^\s#])', '\n\\2\\1 \\3'),
+ ('(?<!\s) (::|&&|\|\||<=|>=|!=|\|=|==|\+=|-=|\*=|/=|\?|<|\+|-|=|/|:|&XXX|\||\*XXX) *\n( *)([^\s#])', '\n\\2\\1 \\3'),
# space after `operator'
('(\Woperator) *([^\w\s])', '\\1 \\2'),
# trailing parenthesis open
# space after `operator'
('(\Woperator) *([^\w\s])', '\\1 \\2'),
# trailing parenthesis open
+ " # leave the leading " character visible to CXX rules