我正在尝试获取两个字符串之间的字符串,如下所示。
my_string = '[bbdate]august[ebdate]'
desired_output = august
我尝试了下面的代码,但是没有用。
s = '[bbdate]august[ebdate]'
result = re.search('[bbdate](.*)[ebdate]', s)
把这个给了我
print (result.group(1)) = bbdate]august[ebdate
预先感谢
答案 0 :(得分:1)
尝试一下-
result = re.search('\[bbdate\](.*)\[ebdate\]', s)
问题在于,如果没有\
,则将方括号视为正则表达式字符的一部分,而不是字符串的一部分。
答案 1 :(得分:0)
您可以使用类似的内容:
import re
s = '[bbdate]august[ebdate]'
r = re.findall(r"\](.*?)\[", s)
print(r)
# ['august']
注意:
[bbdate]august[ebdate]
无效python syntax,因为
您正在尝试将list
([bbdate]
)附加到string
(august
。re.sub
来完成这项工作:r = re.sub(r".*?\](.+)\[.*", r"\1", s)