【发布时间】:2020-12-24 21:11:58
【问题描述】:
假设我有以下文字:
text = "30 people work for 3 managers"
T 我想从上面的文本中只提取 3 个。上面的文字只是一个例子,可以是任意的。以下代码似乎正确但不起作用
find = re.findall(r"3", text)
这段代码的输出是
['3', '3']
find = re.findall(r"(\d+)", text)
上述方法也行不通,因为我会同时得到 30 和 3。我特别想3。
输出也在列表中。如何转换为字符串。我不想使用 .join 方法或 for 循环。我最终会将此代码应用于df。所以我可以使用 .apply() 方法
【问题讨论】:
-
re.findall('(3)[\s\.]', text)寻找三个后跟空格或句点作为句末。 -
也许只是
\b3\b
标签: python-3.x pandas python-re