自然语言处理(NLP)函数
这是一个仍在开发中的实验性特性,目前尚未准备好供广泛使用。在未来的版本中,它可能会以不可预期且不向后兼容的方式发生变化。请将 allow_experimental_nlp_functions 设为 1 以启用该功能。
detectCharset
自 v22.2 起引入
检测非 UTF-8 编码输入字符串的字符集。
语法
参数
s— 要分析的文本。String
返回值
返回一个表示检测到的字符集编码的字符串。String
示例
基本用法
detectLanguage
引入版本:v22.2
检测 UTF-8 编码输入字符串的语言。 该函数使用 CLD2 库 进行检测,并返回两个字母的 ISO 语言代码。
输入越长,语言检测的精度越高。
语法
参数
text_to_be_analyzed— 要分析的文本。String
返回值
返回检测到的语言的 2 个字母的 ISO 代码。其他可能的结果:un = 未知,无法检测到任何语言;other = 检测到的语言不具有 2 个字母的代码。String
示例
混合语言文本
detectLanguageMixed
引入版本:v22.2
与 detectLanguage 函数类似,但 detectLanguageMixed 返回一个 Map,其中键为 2 字母语言代码,值为该语言在文本中所占的百分比。
语法
参数
s— 要分析的文本String
返回值
返回一个 Map,键是 2 个字母的 ISO 语言代码,对应的值是该语言在文本中所占的百分比 Map(String, Float32)
示例
混合语言
detectLanguageUnknown
自 v22.2 起引入
与 detectLanguage 函数类似,不同之处在于 detectLanguageUnknown 函数可处理非 UTF-8 编码的字符串。
当字符集为 UTF-16 或 UTF-32 时,建议优先使用此版本。
语法
参数
s— 要分析的文本。String
返回值
返回检测到的语言的 2 个字母的 ISO 代码。其他可能的结果:un = 未知,无法检测到任何语言;other = 检测到的语言没有对应的 2 字母代码。String
示例
基本用法
detectProgrammingLanguage
自 v22.2 起提供
根据给定的源代码片段确定其编程语言。
语法
参数
source_code— 要分析的源代码的字符串形式。String
返回值
返回表示编程语言的 String
示例
C++ 代码检测
detectTonality
引入于:v22.2
用于判断提供的文本数据的情感倾向。
该函数目前存在如下限制:它使用内置的情感词典,并且仅适用于俄语。
语法
参数
s— 要分析的文本。String
返回值
返回文本中各个单词情感值的平均值 Float32
示例
俄语情感分析
lemmatize
引入于:v21.9
对给定单词执行词形还原(lemmatization)。 此函数运行时需要依赖词典,可以从 GitHub 获取。关于如何从本地文件加载词典的更多详情,请参阅页面 “Defining Dictionaries”。
语法
参数
返回值
返回该单词词形还原后的形式 String
示例
英文词形还原
stem
引入于:v21.9
对给定单词执行词干提取。
语法
参数
返回值
返回该单词的词干形式 String
示例
英文词干提取
synonyms
自 v21.9 引入
查找给定单词的同义词。
有两种类型的同义词扩展:
plainwordnet
使用 plain 扩展类型时,需要提供一个纯文本文件的路径,其中每一行对应一个同义词集。
该行中的单词必须以空格或制表符分隔。
使用 wordnet 扩展类型时,需要提供一个包含 WordNet 同义词库的目录路径。
该词库必须包含 WordNet 词义索引。
语法
参数
返回值
返回指定词语的同义词数组。Array(String)
示例
查找同义词