1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
https://sourceforge.net/p/scid/patches/8/
--- a/scripts/pgnfix.py
+++ b/scripts/pgnfix.py
@@ -12,7 +12,6 @@
# put in the Site or Event field, and move them to the Date field.
import sys
-import string
import re
if len(sys.argv) < 2:
@@ -69,16 +68,16 @@
if match:
full = match.group(0)
last, first = match.groups()
- first = string.strip(first)
- full = string.strip(full)
- last = string.strip(last)
+ first = str.strip(first)
+ full = str.strip(full)
+ last = str.strip(last)
if first:
for name in (full, last,
last + " " + first,
last + ", " + first[0],
last + " " + first[0]):
- name = string.lower(name)
- if spelling.has_key(name):
+ name = str.lower(name)
+ if name in spelling:
del spelling[name]
else:
spelling[name] = full
@@ -107,16 +106,16 @@
if error:
out = sys.stderr
error = 0
- out.write(string.join(current, ""))
+ out.write("".join(current))
current = []
bad_lines = []
else:
if headers:
for field, value in specials.items():
- if not headers.has_key(field):
+ if not field in headers:
headers[field] = value
for field in order:
- if headers.has_key(field):
+ if field in headers:
current.append('[%s "%s"]\n' % (field, headers[field]))
del headers[field]
for field, value in headers.items():
@@ -172,7 +171,7 @@
specials["Date"] = "%04d.%02d.%02d" % (year, month, day)
value = re.sub("\(?([0-9]+)/([0-9]+)/([0-9]+)\)?", "", value)
- value = string.strip(value)
+ value = str.strip(value)
if field in ("White", "Black"):
name = re.sub("[MW][0-9]{5}", "", value)
@@ -193,21 +192,21 @@
name = re.sub("_", " ", name)
name = re.sub("\.", "", name)
name = re.sub("([A-Za-z])([0-9])", "\\1 \\2", name)
- name = string.strip(name)
+ name = str.strip(name)
name = re.sub("^([A-Z]+?)\s*([A-Z][a-z].+)", "\\2, \\1",
name)
name = re.sub(",\s*([GI]M)?$", "", name)
- name = string.strip(name)
- t = string.lower(name)
+ name = str.strip(name)
+ t = str.lower(name)
- if spelling.has_key(t):
+ if t in spelling:
name = spelling[t]
headers[field] = name
- elif not bogus.has_key(field) or not re.search(bogus[field], value):
+ elif not field in bogus or not re.search(bogus[field], value):
headers[field] = value
if current:
@@ -215,7 +214,7 @@
if error:
out = sys.stderr
error = 0
- out.write(string.join(current, ""))
+ out.write("".join(current))
current = []
bad_lines = []
|