我有一个带有以下几行的文本文件:
User Input: "Hello"...................<1sec>
User Input: "Hi!".....................<2sec>
User Input: "How's it going"..........<1sec>
我只想要“”中的字符串
目前我正在使用
m= ""
for line in file:
if "USER INPUT" in lines :
m+=line[12:]
我不确定如何获得“”的位置,以确保它仅位于两个“”之间。
答案 0 :(得分:5)
使用正则表达式。
例如:
import re
s = """User Input: "Hello"...................<1sec>
User Input: "Hi!".....................<2sec>
User Input: "How's it going"..........<1sec>"""
for line in s.splitlines():
if "User Input:" in line:
m = re.search(r'\"(?P<data>.*?)\"', line) #Get content between ""
if m:
print(m.group("data"))
输出:
Hello
Hi!
How's it going
答案 1 :(得分:1)
您可以分割02183101399205000 GBTD#VBYMBQ 04455927964
02183101409310000 XBQMPL#C##B 27699484827
54183101003651000 #WFG#SNVDG# 71530894204
字符上的行,以获取该字符任一侧的所有元素的列表。空闲示例:
"
答案 2 :(得分:1)
使用findall的另一种方法:
import re
s = """User Input: "Hello"...................<1sec>
User Input: "Hi!".....................<2sec>
User Input: "How's it going"..........<1sec>"""
for line in s.splitlines():
output = re.findall(r'"([^"]*)"', line)
if output:
print(output[0])
输出:
Hello
Hi!
How's it going