Regex not operator

Not quite, although generally you can usually use some workaround on one of the forms [^abc], which is character by character not a or b or c, or negative lookahead: a(?!b), which is a not followed by b or negative lookbehind: (?<!a)b, which is b not preceeded by a

proper name for python * operator?

In Ruby and Perl 6 this has been called “splat”, and I think most people from those communities will figure out what you mean if you call it that. The Python tutorial uses the phrase “unpacking argument lists”, which is long and descriptive. It is also referred to as iterable unpacking, or in the case … Read more

Regex how to match an optional character

Use [A-Z]? to make the letter optional. {1} is redundant. (Of course you could also write [A-Z]{0,1} which would mean the same, but that’s what the ? is there for.) You could improve your regex to ^([0-9]{5})+\s+([A-Z]?)\s+([A-Z])([0-9]{3})([0-9]{3})([A-Z]{3})([A-Z]{3})\s+([A-Z])[0-9]{3}([0-9]{4})([0-9]{2})([0-9]{2}) And, since in most regex dialects, \d is the same as [0-9]: ^(\d{5})+\s+([A-Z]?)\s+([A-Z])(\d{3})(\d{3})([A-Z]{3})([A-Z]{3})\s+([A-Z])\d{3}(\d{4})(\d{2})(\d{2}) But: do you really need … Read more

What is the result of % in Python?

The % (modulo) operator yields the remainder from the division of the first argument by the second. The numeric arguments are first converted to a common type. A zero right argument raises the ZeroDivisionError exception. The arguments may be floating point numbers, e.g., 3.14%0.7 equals 0.34 (since 3.14 equals 4*0.7 + 0.34.) The modulo operator … Read more