python编译器的雪球
sbl2p的Python项目详细描述
sbl2py转换在Snowball字符串处理中写入的代码 语言转换成Python:
import sbl2py import sbl2py.utils sbl_code = """ externals ( stem ) define stem as ( backwards ( ['ly'] delete ) ) """ py_code = sbl2py.translate_string(sbl_code) module = sbl2py.utils.module_from_code('demo_module', py_code) print module.stem('fabulously')
输出:
fabulous
功能
sbl2py应该支持所有常见的雪球特性 使用特别是,词干算法使用的所有特性 支持Snowball词干分析器包
用法
将snowball文件转换为python模块的最简单方法是 使用sbl2py脚本,该脚本自动与 sbl2py:
sbl2py SNOWBALL_FILE PYTHON_FILE
有关可用选项,请参见sbl2py --help。
您还可以在Python中使用sbl2pysbl2py模块 提供两个从字符串转换雪球代码的函数 (translate_string)或文件(translate_file)并返回 对应的python源作为字符串。如果要执行 代码,只需使用 sbl2py.utils模块。
生成的python模块从原始的 在externals部分列出的雪球代码。也就是说, 如果你的雪球代码中有externals ( stem )并存储 在名为mystemmer.pythen的文件中生成的Python模块 您可以按如下方式调用stem例程:
import mystemmer print mystemmer.stem('foobar')
许可证
sbl2py包含在MIT License中。雪球源代码 并且test目录中的单词列表由 BSD-3 License。有关详细信息,请参见LICENSE文件