Python 查找两个字符之间的内容正则表达式?
我有一个Python 查找两个字符之间的内容正则表达式?,python,regex,python-3.x,Python,Regex,Python 3.x,我有一个.txt文件,其中包含每行特定项目的所有信息,格式如下: 1 +'item 1'+ [0, 0] 2 +'item 2'+ [0, 0] 第一个数字是项目id,+符号之间的字符串是项目名称,最后的列表是项目的统计信息。我需要使用正则表达式来获取+符号之间的名称,但是我找到的所有答案都不是我想要的,而且我对正则表达式的理解也不是很好。我应该使用什么模式来查找名称 类似的问题/答案,并没有真正回答我的问题:,尝试使用常规字符串方法隔离项目名称,请参见下文 saved_name=[] 打开(
.txt
文件,其中包含每行特定项目的所有信息,格式如下:
1 +'item 1'+ [0, 0]
2 +'item 2'+ [0, 0]
第一个数字是项目id,+
符号之间的字符串是项目名称,最后的列表是项目的统计信息。我需要使用正则表达式来获取+
符号之间的名称,但是我找到的所有答案都不是我想要的,而且我对正则表达式的理解也不是很好。我应该使用什么模式来查找名称
类似的问题/答案,并没有真正回答我的问题:,尝试使用常规字符串方法隔离项目名称,请参见下文
saved_name=[]
打开('file.txt','r')作为fr:
对于fr.readlines()中的行:
name=line.split('+')[1]
已保存的\u名称。追加(名称)
或使用正则表达式:
#编译模式,捕获所有项。
pattern=re.compile(r'(.+)\s\+(.+)\+\s(+)'))
已保存=[]
打开('file.txt','r')作为fr:
对于fr.readlines()中的行:
名称=匹配(图案,线条.strip('\n'))
id、name、data=matches.groups()
已保存。追加((id、名称、数据))
尝试使用常规字符串方法隔离项目名称,请参见下文
saved_name=[]
打开('file.txt','r')作为fr:
对于fr.readlines()中的行:
name=line.split('+')[1]
已保存的\u名称。追加(名称)
或使用正则表达式:
#编译模式,捕获所有项。
pattern=re.compile(r'(.+)\s\+(.+)\+\s(+)'))
已保存=[]
打开('file.txt','r')作为fr:
对于fr.readlines()中的行:
名称=匹配(图案,线条.strip('\n'))
id、name、data=matches.groups()
已保存。追加((id、名称、数据))
最好使用split方法,但如果确实需要使用regex,可以这样做:
import re
file = 'filepath/to/your/text/file.txt'
with open(file, encoding='utf-8') as f:
pattern = r'\'(.+)\''
solution = re.findall(pattern, f.read())
print(solution)
最好使用split方法,但如果确实需要使用regex,可以这样做:
import re
file = 'filepath/to/your/text/file.txt'
with open(file, encoding='utf-8') as f:
pattern = r'\'(.+)\''
solution = re.findall(pattern, f.read())
print(solution)
如果您能向我们展示您迄今为止所做的尝试,那么改进您的尝试通常比我们从头开始更容易。另外,当我试图写下我已经尝试过的东西时,我常常会找到自己的答案。关于
“1+'item1'+[0,0]”呢。拆分('+')[1]
而不是正则表达式?怎么样(?如果您能向我们展示您迄今为止所做的尝试,那么改进您的尝试通常比我们从头开始更容易。此外,当我尝试写下我已经尝试过的内容时,我通常会找到自己的答案。“1+'item 1'+[0,0]”。用split('+')[1]
代替regex怎么样?