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

时间:2018-03-01 09:11:17

标签: python regex frequency arabic word-frequency

我使用python 2.7,我想找到文本文件中单词的频率, 我使用以下表达式编写代码,但没有输出:

    import nltk
    import os
    import re
    import string
    path="C:\Python27\Lib"
    os.chdir(path)
    frequency = {}
    document_text = open('1.txt', 'r')
    text_string = document_text.read().lower()
    match_pattern = re.findall(r'^[\u0621-\u064A\u0660-\u0669 ]+$', 
    text_string)

    for word in match_pattern:
         count = frequency.get(word,0)
         frequency[word] = count + 1

    frequency_list = frequency.keys()

    for words in frequency_list:
         print words, frequency[words]

1 个答案:

答案 0 :(得分:0)

这是因为你没有匹配所有的字符。如果你删除锚点,你会得到一个匹配。见演示。

https://regex101.com/r/uRdqZj/2