summaryrefslogtreecommitdiffstats
path: root/Tools/scripts/fixcid.py
diff options
context:
space:
mode:
authorMartin Panter <vadmium+py@gmail.com>2016-09-11 09:48:57 (GMT)
committerMartin Panter <vadmium+py@gmail.com>2016-09-11 09:48:57 (GMT)
commit8f7d36ba9aff1148eac3a517b6a4c07eb4352536 (patch)
treed63dd93306d18b15903e0183d6f160a032efd7b7 /Tools/scripts/fixcid.py
parent0b5f22d371c6220b1a2e7d0f084782e21b4fa6c4 (diff)
downloadcpython-8f7d36ba9aff1148eac3a517b6a4c07eb4352536.zip
cpython-8f7d36ba9aff1148eac3a517b6a4c07eb4352536.tar.gz
cpython-8f7d36ba9aff1148eac3a517b6a4c07eb4352536.tar.bz2
Issue #27952: Get fixcid.py working with the re module
Diffstat (limited to 'Tools/scripts/fixcid.py')
-rwxr-xr-xTools/scripts/fixcid.py30
1 files changed, 16 insertions, 14 deletions
diff --git a/Tools/scripts/fixcid.py b/Tools/scripts/fixcid.py
index 58ec7ad..18b4342 100755
--- a/Tools/scripts/fixcid.py
+++ b/Tools/scripts/fixcid.py
@@ -88,9 +88,9 @@ def main():
sys.exit(bad)
# Change this regular expression to select a different set of files
-Wanted = '^[a-zA-Z0-9_]+\.[ch]$'
+Wanted = r'^[a-zA-Z0-9_]+\.[ch]$'
def wanted(name):
- return re.match(Wanted, name) >= 0
+ return re.match(Wanted, name)
def recursedown(dirname):
dbg('recursedown(%r)\n' % (dirname,))
@@ -168,6 +168,7 @@ def fix(filename):
if filename == '-': return 0 # Done in filter mode
f.close()
if not g: return 0 # No changes
+ g.close()
# Finishing touch -- move files
@@ -193,21 +194,21 @@ def fix(filename):
# Tokenizing ANSI C (partly)
-Identifier = '\(struct \)?[a-zA-Z_][a-zA-Z0-9_]+'
-String = '"\([^\n\\"]\|\\\\.\)*"'
-Char = '\'\([^\n\\\']\|\\\\.\)*\''
-CommentStart = '/\*'
-CommentEnd = '\*/'
+Identifier = '(struct )?[a-zA-Z_][a-zA-Z0-9_]+'
+String = r'"([^\n\\"]|\\.)*"'
+Char = r"'([^\n\\']|\\.)*'"
+CommentStart = r'/\*'
+CommentEnd = r'\*/'
Hexnumber = '0[xX][0-9a-fA-F]*[uUlL]*'
Octnumber = '0[0-7]*[uUlL]*'
Decnumber = '[1-9][0-9]*[uUlL]*'
-Intnumber = Hexnumber + '\|' + Octnumber + '\|' + Decnumber
+Intnumber = Hexnumber + '|' + Octnumber + '|' + Decnumber
Exponent = '[eE][-+]?[0-9]+'
-Pointfloat = '\([0-9]+\.[0-9]*\|\.[0-9]+\)\(' + Exponent + '\)?'
+Pointfloat = r'([0-9]+\.[0-9]*|\.[0-9]+)(' + Exponent + r')?'
Expfloat = '[0-9]+' + Exponent
-Floatnumber = Pointfloat + '\|' + Expfloat
-Number = Floatnumber + '\|' + Intnumber
+Floatnumber = Pointfloat + '|' + Expfloat
+Number = Floatnumber + '|' + Intnumber
# Anything else is an operator -- don't list this explicitly because of '/*'
@@ -228,9 +229,10 @@ def fixline(line):
## print '-->', repr(line)
i = 0
while i < len(line):
- i = Program.search(line, i)
- if i < 0: break
- found = Program.group(0)
+ match = Program.search(line, i)
+ if match is None: break
+ i = match.start()
+ found = match.group(0)
## if Program is InsideCommentProgram: print '...',
## else: print ' ',
## print found