Add utility library for line scanning

This commit is contained in:
Robert Miles 2018-11-14 18:32:28 -05:00
parent 4b962f3e57
commit 9228c72911
1 changed files with 26 additions and 0 deletions

26
util.py Normal file
View File

@ -0,0 +1,26 @@
def raiseerror(cls,*args):
raise cls(*args)
import re
def matchinglines(lines,regex):
ret = []
for i in range(len(lines)):
match = re.match(regex,lines[i])
if match is not None:
ret.append(i)
return ret
def walkback(lines,start,regex):
possible_lines = matchinglines(lines,regex)
possible_lines = [x for x in possible_lines if x<=start]
possible_lines.sort()
if len(possible_lines)>=1:
return possible_lines[-1]
def walkup(lines,start,regex):
possible_lines = matchinglines(lines,regex)
possible_lines = [x for x in possible_lines if x>=start]
possible_lines.sort()
if len(possible_lines)>=1:
return possible_lines[0]