【发布时间】:2021-11-19 20:23:42
【问题描述】:
我有一个带有字母的字符串,偶尔还有 *.我正在尝试在 Python 3 中编写正则表达式来获取以 A 开头并以 * 结尾的字符串中的任何内容,中间的内容可以是任何字母,但不能是 *。非常感谢您的帮助。
【问题讨论】:
-
如何测试
r"(A.+?\*)" -
@JonSG,正则表达式默认是急切的,这意味着它们会尝试捕获最长的匹配。您的正则表达式将捕获从第一个
A开始到最后一个*结束的子字符串。我建议这个正则表达式:A[^*]*\* -
@NirH。你误会了。自己试试
print(re.search(r"(A.+?\*)", "This is Atest* but not this*").group(0)) -
@JonSG,对不起,我在
+之后错过了?,你是对的。
标签: python-3.x regex string