diff options
Diffstat (limited to 'Lib/distutils/filelist.py')
| -rw-r--r-- | Lib/distutils/filelist.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Lib/distutils/filelist.py b/Lib/distutils/filelist.py index 51a1d57..3ba5720 100644 --- a/Lib/distutils/filelist.py +++ b/Lib/distutils/filelist.py @@ -302,7 +302,7 @@ def findall (dir = os.curdir): return list -def glob_to_re (pattern): +def glob_to_re(pattern): """Translate a shell-like glob pattern to a regular expression; return a string containing the regex. Differs from 'fnmatch.translate()' in that '*' does not match "special characters" (which are @@ -317,7 +317,8 @@ def glob_to_re (pattern): # character except the special characters. # XXX currently the "special characters" are just slash -- i.e. this is # Unix-only. - pattern_re = re.sub(r'(^|[^\\])\.', r'\1[^/]', pattern_re) + pattern_re = re.sub(r'((?<!\\)(\\\\)*)\.', r'\1[^/]', pattern_re) + return pattern_re # glob_to_re () |
