gpt4 book ai didi

python - 使用国际字符匹配 Firstname Lastname 表单上的名称

转载 作者:太空宇宙 更新时间:2023-11-03 11:48:27 31 4
gpt4 key购买 nike

我试图通过假设名字的形式是 Firstname LaSTLame 来捕捉名字。这适用于下面的代码,但我希望能够捕捉到像 Pär Åberg 这样的国际名称。我找到了一些解决方案,但不幸的是,它们似乎不适用于 Python 风格的正则表达式。有没有人对此有深入的了解?

#!/usr/bin/python
# -*- coding: utf-8 -*-
import re

text = """
This is a text containing names of people in the text such as
Hillary Clinton or Barack Obama. My problem is with names that uses stuff
outside A-Z like Swedish names such as Pär Åberg."""

for name in re.findall("(([A-Z])[\w-]*(\s+[A-Z][\w-]*)+)", text):
firstname = name[0].split()[0]
print firstname

最佳答案

您需要一个替代品 regex library因为在那里你可以使用 \p{L} - 任何 Unicode 字母

然后,使用

ur'\p{Lu}[\w-]*(?:\s+\p{Lu}[\w-]*)+'

当使用 Unicode 字符串初始化正则表达式时,会自动使用 UNICODE 标志:

If neither the ASCII, LOCALE nor UNICODE flag is specified, it will default to UNICODE if the regex pattern is a Unicode string and ASCII if it’s a bytestring.

关于python - 使用国际字符匹配 Firstname Lastname 表单上的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33739909/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com