需求:
free-spacing,case insensitive,dot matches lines breaks,and "^ and $ match at line breaks"
实现
a. Python:
import re
reobj = re.compile("regex pattern",
re.VERBOSE | re.IGNORECASE |
re.DOTALL | re.MULTILINE)
说明:
Free-spacing: re.VERBOSE or re.X
Case insentitive: re.IGNORECASE or re.I
DOt matches line breaks: re.DOTALL or re.S
^ and $ match at line breaks: re.MULTILINE or re.M
补充:
Extra options to change the meaning of word bounaries and the shorthand character classes \w \d \s,as well as their negated counterparts
By default,these tokens deal only with ASCII letters,digits,and whitespace.
re.LOCALE or re.L option makes these tokens dependent on the current locale.
re.UNICODE or re.U makes these tokens dependent on the Unicode standard
b. Tcl
set result [regexp -nocase -lineanchor -expanded {abc} $subject]
说明:
Free-spacing: -expanded
Case insentitive: -nocase
DOt matches line breaks: do not set-linestop
^ and $ match at line breaks: -lineanchor