我在提取阿拉伯名字时遇到问题,我使用了lookbehind方法:
name=re.search(r"(?<=MR)\s\D\w+",H,re.M|re.I)
其中 H 是字符串,当我将它与 MR 一起使用时,它工作得很好!! 但问题是当我把它改成“??”,即阿拉伯语中的“可能的名字” 它找不到名称
最佳答案
如果您想要速记字符类(\w
、\W
、\b
、\B
、 \d
、\D
、\s
和 \S
)要支持 Unicode,请使用 re.U
(或re.UNICODE
):
name = re.search(r"(?<=اسمي)\s\D\w+", H, re.U)
re.M
标志在这里是多余的,因为它只影响 ^
和 $
。
re.I
标志在这里是多余的,因为阿拉伯字符没有大写/小写的概念。
关于python - 使用正则表达式提取用户的阿拉伯名字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33877189/