summaryrefslogtreecommitdiff
path: root/Lib/fnmatch.py
diff options
context:
space:
mode:
authorTim Peters <tim.peters@gmail.com>2001-01-14 23:36:06 +0000
committerTim Peters <tim.peters@gmail.com>2001-01-14 23:36:06 +0000
commit88869f9787cd4ceb2298e4b13980beb057687824 (patch)
tree653976731f926b5e098bf57b4858a9516af220b5 /Lib/fnmatch.py
parent752d3f557e95cda98a8b50808cfe2f2d0b8767eb (diff)
downloadcpython-git-88869f9787cd4ceb2298e4b13980beb057687824.tar.gz
Whitespace normalization.
Diffstat (limited to 'Lib/fnmatch.py')
-rw-r--r--Lib/fnmatch.py136
1 files changed, 68 insertions, 68 deletions
diff --git a/Lib/fnmatch.py b/Lib/fnmatch.py
index 75d2d6eb43..a4508bb312 100644
--- a/Lib/fnmatch.py
+++ b/Lib/fnmatch.py
@@ -15,75 +15,75 @@ import re
_cache = {}
def fnmatch(name, pat):
- """Test whether FILENAME matches PATTERN.
-
- Patterns are Unix shell style:
-
- * matches everything
- ? matches any single character
- [seq] matches any character in seq
- [!seq] matches any char not in seq
-
- An initial period in FILENAME is not special.
- Both FILENAME and PATTERN are first case-normalized
- if the operating system requires it.
- If you don't want this, use fnmatchcase(FILENAME, PATTERN).
- """
-
- import os
- name = os.path.normcase(name)
- pat = os.path.normcase(pat)
- return fnmatchcase(name, pat)
+ """Test whether FILENAME matches PATTERN.
+
+ Patterns are Unix shell style:
+
+ * matches everything
+ ? matches any single character
+ [seq] matches any character in seq
+ [!seq] matches any char not in seq
+
+ An initial period in FILENAME is not special.
+ Both FILENAME and PATTERN are first case-normalized
+ if the operating system requires it.
+ If you don't want this, use fnmatchcase(FILENAME, PATTERN).
+ """
+
+ import os
+ name = os.path.normcase(name)
+ pat = os.path.normcase(pat)
+ return fnmatchcase(name, pat)
def fnmatchcase(name, pat):
- """Test whether FILENAME matches PATTERN, including case.
-
- This is a version of fnmatch() which doesn't case-normalize
- its arguments.
- """
-
- if not _cache.has_key(pat):
- res = translate(pat)
- _cache[pat] = re.compile(res)
- return _cache[pat].match(name) is not None
+ """Test whether FILENAME matches PATTERN, including case.
+
+ This is a version of fnmatch() which doesn't case-normalize
+ its arguments.
+ """
+
+ if not _cache.has_key(pat):
+ res = translate(pat)
+ _cache[pat] = re.compile(res)
+ return _cache[pat].match(name) is not None
def translate(pat):
- """Translate a shell PATTERN to a regular expression.
-
- There is no way to quote meta-characters.
- """
-
- i, n = 0, len(pat)
- res = ''
- while i < n:
- c = pat[i]
- i = i+1
- if c == '*':
- res = res + '.*'
- elif c == '?':
- res = res + '.'
- elif c == '[':
- j = i
- if j < n and pat[j] == '!':
- j = j+1
- if j < n and pat[j] == ']':
- j = j+1
- while j < n and pat[j] != ']':
- j = j+1
- if j >= n:
- res = res + '\\['
- else:
- stuff = pat[i:j]
- i = j+1
- if stuff[0] == '!':
- stuff = '[^' + stuff[1:] + ']'
- elif stuff == '^'*len(stuff):
- stuff = '\\^'
- else:
- while stuff[0] == '^':
- stuff = stuff[1:] + stuff[0]
- stuff = '[' + stuff + ']'
- res = res + stuff
- else:
- res = res + re.escape(c)
- return res + "$"
+ """Translate a shell PATTERN to a regular expression.
+
+ There is no way to quote meta-characters.
+ """
+
+ i, n = 0, len(pat)
+ res = ''
+ while i < n:
+ c = pat[i]
+ i = i+1
+ if c == '*':
+ res = res + '.*'
+ elif c == '?':
+ res = res + '.'
+ elif c == '[':
+ j = i
+ if j < n and pat[j] == '!':
+ j = j+1
+ if j < n and pat[j] == ']':
+ j = j+1
+ while j < n and pat[j] != ']':
+ j = j+1
+ if j >= n:
+ res = res + '\\['
+ else:
+ stuff = pat[i:j]
+ i = j+1
+ if stuff[0] == '!':
+ stuff = '[^' + stuff[1:] + ']'
+ elif stuff == '^'*len(stuff):
+ stuff = '\\^'
+ else:
+ while stuff[0] == '^':
+ stuff = stuff[1:] + stuff[0]
+ stuff = '[' + stuff + ']'
+ res = res + stuff
+ else:
+ res = res + re.escape(c)
+ return res + "$"