小编sar*_*ara的帖子

如何使用 Hazm 规范化波斯文本

我有一个包含一些其他文件夹的文件夹,每个文件夹都包含很多文本文件。我必须在特定单词前后提取5 个单词,并且以下代码工作正常。

问题是因为我没有对文本进行标准化,所以它只会返回几句话,而还有更多。在波斯语中,有一个名为hazm的模块用于规范化文本。我如何在这段代码中使用它?

例如规范化:“?” 应该改为“?” “?” 应该改为“?”。因为前两个实际上是在波斯语中使用的阿拉伯字母。没有规范化代码只返回用第二种形式写的单词,它不能识别第一种形式的单词阿拉伯语)。

import os
from hazm import Normalizer


def getRollingWindow(seq, w):
    win = [next(seq) for _ in range(11)]
    yield win
    for e in seq:
        win[:-1] = win[1:]
        win[-1] = e
        yield win


def extractSentences(rootDir, searchWord):
    with open("????", "w", encoding="utf-8") as outfile:
        for root, _dirs, fnames in os.walk(rootDir):
            for fname in fnames:
                print("Looking in", os.path.join(root, fname))
                with open(os.path.join(root, fname), …
Run Code Online (Sandbox Code Playgroud)

nlp persian python-3.x

3
推荐指数
1
解决办法
1604
查看次数

标签 统计

nlp ×1

persian ×1

python-3.x ×1