我有下面这样的句子

w = "Chiang Wei-kuo (traditional Chinese: 蔣緯國; simplified Chinese: 蒋纬国; pinyin: Jiǎng Wěiguó, or Wego Chiang; and Nadezhda Nikitichna Mikhalkova (Russian: Надежда Никитична Михалкова;"

我用下面的正则表达式来捕捉非拉丁单词(蔣緯國, 蒋纬国, Надежда Никитична Михалкова)

for match in re.finditer(r'(?<=:\s)\W+(?=;)', w):
    print(match[0])

所以我试图捕捉符号:和符号;之间的任何非单词字符\W.但它似乎不起作用.我也试着用[^a-zA-Z0-9_]代替\W,但仍然不起作用.有什么帮助吗?

推荐答案

你也可以用国旗re.ASCII

import re

w = "Chiang Wei-kuo (traditional Chinese: 蔣緯國; simplified Chinese: 蒋纬国; pinyin: Jiǎng Wěiguó, or Wego Chiang; and Nadezhda Nikitichna Mikhalkova (Russian: Надежда Никитична Михалкова;"
print(re.findall(r'(?<=:\s)\W+(?=;)', w, re.ASCII))

输出

['蔣緯國', '蒋纬国', 'Надежда Никитична Михалкова']

Python-3.x相关问答推荐

这是重命名极地df列的最好方式吗?

小部件padx和包方法ipadx有什么不同?

AddMultplicationEquality() 用于多个变量

添加任意数量的 pandas 数据框

重复数组直到一定长度 groupby pandas

你能骗PIP 让它相信包已经安装了吗

如何使用 django rest 框架在 self forienkey 中删除多达 n 种类型的数据?

为什么 Sympy 不能解决我的非线性系统? Python 解释器一直在执行,直到我终止进程

无法使用 Python 和 Selenium 检索 href 属性

ImportError:没有名为资源的模块

二进制文件的 Python 3 和 base64 编码

如何在不使用 @hydra.main() 的情况下获取 Hydra 配置

将 args、kwargs 传递给 run_in_executor

谁能给我一个 Python 3 中标准输入和标准输出的快速教程?

使用 python 3.0 的 Numpy

如何判断列表中的所有项目是否都是字符串

在 Keras 中训练神经网络的零精度

python asyncio add_done_callback 与 async def

在 Meta 中创建具有动态模型的通用序列化程序

在 PyCharm 中配置解释器:请使用不同的 SDK 名称