[add] added new utility function to find a substring in a list of strings
This commit is contained in:
parent
f9d40439a9
commit
c500f1b8bb
@ -107,6 +107,34 @@ def findComboBoxIndex(combo_box, val):
|
|||||||
"""
|
"""
|
||||||
return combo_box.findText(val) if combo_box.findText(val) is not -1 else 0
|
return combo_box.findText(val) if combo_box.findText(val) is not -1 else 0
|
||||||
|
|
||||||
|
def find_in_list(list, str):
|
||||||
|
"""
|
||||||
|
takes a list of strings and a string and returns the first list item
|
||||||
|
matching the string pattern
|
||||||
|
:param list: list to search in
|
||||||
|
:param str: pattern to search for
|
||||||
|
:return: first list item containing pattern
|
||||||
|
|
||||||
|
.. example::
|
||||||
|
|
||||||
|
>>> l = ['/dir/e1234.123.12', '/dir/e2345.123.12', 'abc123', 'def456']
|
||||||
|
>>> find_in_list(l, 'dir')
|
||||||
|
'/dir/e1234.123.12'
|
||||||
|
>>> find_in_list(l, 'e1234')
|
||||||
|
'/dir/e1234.123.12'
|
||||||
|
>>> find_in_list(l, 'e2')
|
||||||
|
'/dir/e2345.123.12'
|
||||||
|
>>> find_in_list(l, 'ABC')
|
||||||
|
'abc123'
|
||||||
|
>>> find_in_list(l, 'f456')
|
||||||
|
'def456'
|
||||||
|
>>> find_in_list(l, 'gurke')
|
||||||
|
|
||||||
|
"""
|
||||||
|
rlist = [s for s in list if str.lower() in s.lower()]
|
||||||
|
if rlist:
|
||||||
|
return rlist[0]
|
||||||
|
return None
|
||||||
|
|
||||||
def find_nearest(array, value):
|
def find_nearest(array, value):
|
||||||
'''
|
'''
|
||||||
|
Loading…
Reference in New Issue
Block a user