simplify token replace, catch one-char end-of-string tokens
This commit is contained in:
parent
2218d4a888
commit
b2c5ad041c
1 changed files with 6 additions and 10 deletions
|
@ -129,17 +129,13 @@ def format_tokens(s: str, names: typing.List[str], sigil: str="$"
|
||||||
|
|
||||||
while i < max:
|
while i < max:
|
||||||
if s[i] == sigil:
|
if s[i] == sigil:
|
||||||
if s[i+1] == sigil:
|
if not s[i+1] == sigil:
|
||||||
i += 1
|
i += 1
|
||||||
else:
|
for name in names:
|
||||||
sigil_found = True
|
if len(name) <= (len(s)-i) and s[i:i+len(name)] == name:
|
||||||
elif sigil_found:
|
tokens.append((i-1, "%s%s" % (sigil, name)))
|
||||||
sigil_found = False
|
i += len(name)
|
||||||
for name in names:
|
break
|
||||||
if len(name) <= (len(s)-i) and s[i:i+len(name)] == name:
|
|
||||||
tokens.append((i-1, "%s%s" % (sigil, name)))
|
|
||||||
i += len(name)
|
|
||||||
break
|
|
||||||
i += 1
|
i += 1
|
||||||
return tokens
|
return tokens
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue