How to use regex with optional characters in python?
How to use regex with optional characters in python?
You can put a ?
after a group of characters to make it optional.
You want a dot followed by any number of digits .d+
, grouped together (.d+)
, optionally (.d+)?
. Stick that in your pattern:
import re
print re.match((d+(.d+)?), 3434.35353).group(1)
3434.35353
print re.match((d+(.d+)?), 3434).group(1)
3434
This regex should work:
d+(.d+)?
It matches one ore more digits (d+
) optionally followed by a dot and one or more digits ((.d+)?
).
How to use regex with optional characters in python?
Use the one or zero quantifier, ?
. Your regex becomes: (d+(.d+)?)
.
See Chapter 8 of the TextWrangler manual for more details about the different quantifiers available, and how to use them.