如何使用正则表达式从字符串中仅检索阿拉伯文本?

艾哈努(Ahsanul Haque)

我有一个包含阿拉伯文和英文句子的字符串。我想要的是仅提取阿拉伯语句子。

my_string="""
What is the reason
ذَلِكَ الْكِتَابُ لَا رَيْبَ فِيهِ هُدًى لِلْمُتَّقِينَ
behind this?
ذَلِكَ الْكِتَابُ لَا رَيْبَ فِيهِ هُدًى لِلْمُتَّقِينَ
"""

该链接显示阿拉伯字母的Unicode范围是0600-06FF

因此,我想到的最基本的尝试是:

import re
print re.findall(r'[\u0600-\u06FF]+',my_string)

但是,这失败了,因为它返回了以下列表。

['What', 'is', 'the', 'reason', 'behind', 'this?']

如您所见,这与我想要的完全相反。我在这里想念的是什么?

NB

我知道我可以通过使用逆向匹配来匹配阿拉伯字母,如下所示:

print re.findall(r'[^a-zA-Z\s0-9]+',my_string)

但是,我不想要那样。

聚苯乙烯

您可以使用re.sub空字符串替换ascii字符。

>>> my_string="""
... What is the reason
... ذَلِكَ الْكِتَابُ لَا رَيْبَ فِيهِ هُدًى لِلْمُتَّقِينَ
... behind this?
... ذَلِكَ الْكِتَابُ لَا رَيْبَ فِيهِ هُدًى لِلْمُتَّقِينَ
... """
>>> print(re.sub(r'[a-zA-Z?]', '', my_string).strip())
ذَلِكَ الْكِتَابُ لَا رَيْبَ فِيهِ هُدًى لِلْمُتَّقِينَ

ذَلِكَ الْكِتَابُ لَا رَيْبَ فِيهِ هُدًى لِلْمُتَّقِينَ

您的正则表达式无法正常工作,因为您使用的是Python 2,并且您str需要将字符串转换my_string为unicode才能正常工作。但是,它在Python3.x上确实表现出色

>>> print "".join(re.findall(ur'[\u0600-\u06FF]', unicode(my_string, "utf-8"), re.UNICODE))
ذَلِكَالْكِتَابُلَارَيْبَفِيهِهُدًىلِلْمُتَّقِينَذَلِكَالْكِتَابُلَارَيْبَفِيهِهُدًىلِلْمُتَّقِينَ

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

阿拉伯语正则表达式

来自分类Dev

javascript正则表达式以匹配包含阿拉伯语特殊字符符号'ـ'的字符串u0640

来自分类Dev

Bash-使用正则表达式检索文件中的文本字符串

来自分类Dev

阿拉伯数字和空格仅正则表达式

来自分类Dev

用正则表达式匹配阿拉伯语文本

来自分类Dev

使滚动的正则表达式适应ID jQuery脚本以包含阿拉伯字符

来自分类Dev

正则表达式仅限阿拉伯字符和数字

来自分类Dev

使滚动的正则表达式适应ID jQuery脚本以包含阿拉伯字符

来自分类Dev

如何使用正则表达式从字符串中检索值?

来自分类Dev

正则表达式中的范围用于阿拉伯字母

来自分类Dev

python 2.7中阿拉伯语单词的正则表达式

来自分类Dev

从MSSQL NVarchar列中检索阿拉伯文本

来自分类Dev

如何在python中使用正则表达式从字符串中检索子字符串

来自分类Dev

如何使用正则表达式删除文件中的字符串和相邻文本?

来自分类Dev

如何使用正则表达式匹配文本中的顺序字符串?

来自分类Dev

使用正则表达式仅检索7位数字的字符串

来自分类Dev

正则表达式,用于从多行文件文本中检索字符串

来自分类Dev

包含阿拉伯文本时查询字符串问题

来自分类Dev

使用正则表达式检索字符串中特殊字符之间的链接

来自分类Dev

使用python中的正则表达式从字符串中检索节

来自分类Dev

使用正则表达式从字符串中检索数字

来自分类Dev

如何使用正则表达式替换字符串中仅包含特殊字符的单词

来自分类Dev

如何使用正则表达式从字符串中删除特定字符串

来自分类Dev

如何从python中的阿拉伯字符串中删除英文文本?

来自分类Dev

在VBA中使用正则表达式仅获取字符串中的数字

来自分类Dev

iOS正则表达式阿拉伯语

来自分类Dev

没有任何数字的波斯(阿拉伯)字母的正则表达式

来自分类Dev

正则表达式阿拉伯语语音匹配

来自分类Dev

正则表达式:分隔标签接受阿拉伯语或英语

Related 相关文章

  1. 1

    阿拉伯语正则表达式

  2. 2

    javascript正则表达式以匹配包含阿拉伯语特殊字符符号'ـ'的字符串u0640

  3. 3

    Bash-使用正则表达式检索文件中的文本字符串

  4. 4

    阿拉伯数字和空格仅正则表达式

  5. 5

    用正则表达式匹配阿拉伯语文本

  6. 6

    使滚动的正则表达式适应ID jQuery脚本以包含阿拉伯字符

  7. 7

    正则表达式仅限阿拉伯字符和数字

  8. 8

    使滚动的正则表达式适应ID jQuery脚本以包含阿拉伯字符

  9. 9

    如何使用正则表达式从字符串中检索值?

  10. 10

    正则表达式中的范围用于阿拉伯字母

  11. 11

    python 2.7中阿拉伯语单词的正则表达式

  12. 12

    从MSSQL NVarchar列中检索阿拉伯文本

  13. 13

    如何在python中使用正则表达式从字符串中检索子字符串

  14. 14

    如何使用正则表达式删除文件中的字符串和相邻文本?

  15. 15

    如何使用正则表达式匹配文本中的顺序字符串?

  16. 16

    使用正则表达式仅检索7位数字的字符串

  17. 17

    正则表达式,用于从多行文件文本中检索字符串

  18. 18

    包含阿拉伯文本时查询字符串问题

  19. 19

    使用正则表达式检索字符串中特殊字符之间的链接

  20. 20

    使用python中的正则表达式从字符串中检索节

  21. 21

    使用正则表达式从字符串中检索数字

  22. 22

    如何使用正则表达式替换字符串中仅包含特殊字符的单词

  23. 23

    如何使用正则表达式从字符串中删除特定字符串

  24. 24

    如何从python中的阿拉伯字符串中删除英文文本?

  25. 25

    在VBA中使用正则表达式仅获取字符串中的数字

  26. 26

    iOS正则表达式阿拉伯语

  27. 27

    没有任何数字的波斯(阿拉伯)字母的正则表达式

  28. 28

    正则表达式阿拉伯语语音匹配

  29. 29

    正则表达式:分隔标签接受阿拉伯语或英语

热门标签

归档