Skip to content

Commit f75a884

Browse files
committed
1 line tab-header: use named re's
1 parent a32263a commit f75a884

File tree

3 files changed

+20
-9
lines changed

3 files changed

+20
-9
lines changed

Orange/data/io_base.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -174,19 +174,19 @@ def _header1(cls, headers: List[List[str]]) -> Tuple[List, List, List]:
174174
for vartype in Variable.registry.values())
175175
if len(t) == 1]).upper() # CNDST
176176

177-
res = ('^(?:('
177+
res = ('^((?P<flags>'
178178
f'[{roles}{types}]|'
179-
f'(?:[{roles}][{types}])|'
180-
f'(?:[{types}][{roles}])'
181-
')#)?(.*)')
179+
f'([{roles}][{types}])|'
180+
f'([{types}][{roles}])'
181+
')#)?(?P<name>.*)')
182182

183183
header1_re = re.compile(res)
184184

185185
flags = []
186186
names = []
187187
for i in headers[0]:
188188
m = header1_re.match(i)
189-
f, n = m.group(1), m.group(2)
189+
f, n = m.group("flags", "name")
190190
flags.append('' if f is None else f)
191191
names.append(n)
192192

Orange/data/tests/test_io_base.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,12 @@ def test_get_header_data_1_flags2(self):
7272

7373
def test_get_header_data_1_hashes(self):
7474
names, types, flags = _TableHeader.create_header_data(
75-
[["Some long text#and here", "vd#Invalid spec", "C#Valid spec"]])
76-
names_ = ["Some long text#and here", "vd#Invalid spec", "Valid spec"]
77-
types_ = ["", "", "c"]
78-
flags_ = ["", "", ""]
75+
[["Some long text#and here", "vd#Invalid spec", "C#Valid spec",
76+
"m#Meta", "cD#Discrete class", "Si#Ignored string"]])
77+
names_ = ["Some long text#and here", "vd#Invalid spec", "Valid spec",
78+
"Meta", "Discrete class", "Ignored string"]
79+
types_ = ["", "", "c", "", "d", "s"]
80+
flags_ = ["", "", "", "m", "c", "i"]
7981
self.assertListEqual(names, names_)
8082
self.assertListEqual(types, types_)
8183
self.assertListEqual(flags, flags_)

i18n/si/msgs.jaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1155,6 +1155,15 @@ data/io_base.py:
11551155
^\s*( |{}|)*\s*$: false
11561156
class `_TableHeader`:
11571157
'#': false
1158+
def `_header1`:
1159+
TYPE_HEADERS: false
1160+
^((?P<flags>: false
1161+
[{roles}{types}]|: false
1162+
([{roles}][{types}])|: false
1163+
([{types}][{roles}]): false
1164+
)#)?(?P<name>.*): false
1165+
flags: false
1166+
name: false
11581167
class `_TableBuilder`:
11591168
def `__init__`:
11601169
'Feature ': false

0 commit comments

Comments
 (0)