文字列から別の文字列を含む行を検索し、行全体を取得する方法はありますか?
例えば:
string =
qwertyuiop
asdfghjkl
zxcvbnm
token qwerty
asdfghjklñ
retrieve_line("token") = "token qwerty"
あなたは「全体の行」に言及したので、私はmystringが行全体であると仮定しました。
if "token" in mystring:
print mystring
ただし、「トークンqwerty」を取得する場合は、
>>> mystring="""
... qwertyuiop
... asdfghjkl
...
... zxcvbnm
... token qwerty
...
... asdfghjklñ
... """
>>> for item in mystring.split("\n"):
... if "token" in item:
... print item.strip()
...
token qwerty
ワンライナーを好む場合:
matched_lines = [line for line in my_string.split('\n') if "substring" in line]
items=re.findall("token.*$",s,re.MULTILINE)
>>> for x in items:
トークンの前に他の文字がある場合も行を取得できます
items=re.findall("^.*token.*$",s,re.MULTILINE)
上記は、Unixのgrepトークンとキーワード「in」または.contains in python and C#
s='''
qwertyuiop
asdfghjkl
zxcvbnm
token qwerty
asdfghjklñ
'''
http://pythex.org/は次の2行に一致します
....
....
token qwerty