Table Text Function 步骤
表:文本函数 步骤对每一行中函数所读取的列应用文本函数,并将结果写入源表副本的新列。函数所读取的任何列中出现 NULL,结果即为 NULL。
- 源表 和 输出表 — 要读取的表和要写入的表。
- 函数 — 要应用的函数。表单提供下面两个表中的函数,并为所选函数读取的每个参数显示一个按其作用命名的列字段。
- 参数列 — 函数读取的列,按表中列出的顺序排列。每一项都是必填的。
- 输出列 — 添加到源副本中的列的名称。
| 函数 | 参数 | 结果 |
|---|---|---|
levenshtein |
第一列,第二列 | 区分大小写的编辑距离,为整数 |
soundex |
文本 | 文本 |
json_format |
JSON | 格式化后的 JSON 文本 |
json_field |
JSON,路径 | 文本 |
json_set_text, json_set_number, json_set_boolean |
JSON,路径,值 | 设置了该值的 JSON 文本 |
regex_match |
文本,模式,区分大小写 | 真或假 |
regex_search |
文本,模式,出现次数,区分大小写 | 位置,为整数 |
regex_extract |
文本,模式,出现次数,区分大小写 | 文本 |
regex_replace |
文本,模式,替换内容,区分大小写 | 文本 |
to_text_number |
数字,模式 | 文本:以 DecimalFormat 风格的模式写出的数字 |
to_text_datetime |
日期/时间,模式 | 文本:以日期时间模式写出的日期 |
parse_date |
文本,模式 | 读取为日期的文本 |
parse_datetime |
文本,模式 | 读取为日期时间的文本 |
已转换的 Savant 分析可以包含其中任何函数,它们的运行方式相同。表单未提供的函数会显示其存储的列,并按保存时的原样保留。
函数 列表还提供以下函数。已转换的 KNIME 工作流也会使用它们。
| 函数 | 参数 | 结果 |
|---|---|---|
damerau_levenshtein, hamming, lcs |
第一列,第二列 | 对应的编辑距离,为整数 |
jaro, jaro_winkler |
第一列,第二列 | 1 减去相似度,文本相同时为 0 |
ngram_distance |
第一列,第二列 | 1 减去字符二元组的 Dice 系数 |
jaccard_tokens, dice_tokens, cosine_tokens |
第一列,第二列 | 1 减去两段文本中单词集合的相似度,任一方没有单词时为 1 |
java_compare |
第一列,第二列 | 首个不同字符的差值,与 Java 的 compareTo 给出的结果相同,为整数 |
java_regex |
文本,模式,替换内容 (仅替换模式) | 从列中读取的 Java 正则表达式:在 matches 和 find 模式下为真或假,在 extract 和 replace 模式下为文本 |
knime_count |
文本,搜索文本 | 搜索文本出现的次数,为整数 |
knime_binomial, long_pow |
两个数字 | 二项式系数或整数幂,使用会回绕的 64 位运算 |
encode, decode |
文本 | 以某种字符集表示的文本的 Base64 字节,以及反向转换 |
url_encode |
文本 | 按表单值进行百分号编码的文本,空格写作 + |
list_sort_numeric |
文本 | 以分隔文本形式保存的列表,按数值排序 |
geojson_to_wkt |
JSON,路径 | 路径(如 $.a[0],或用 $ 表示文本本身)处的 GeoJSON 几何图形,输出为 WKT |
json_patch_apply |
JSON | 应用了 JSON Patch 或 Merge Patch 的文档 |
json_diff |
第一个 JSON,第二个 JSON | 将第一个文档变为第二个文档的 JSON Patch |
json_schema_check |
JSON | 文档相对于 JSON 架构的错误,以 JSON 表示;没有错误时为 NULL |
json_normalize |
JSON | 规范化后的 JSON 文本形式的文档 |
json_to_xml, xml_to_json |
文档 | 转换为 XML 或 JSON 的文档 |
xml_well_formed |
XML | 若为格式良好的 XML 则为该文本,否则为 NULL |
xslt |
XML,样式表 | 经 XSLT 样式表转换的文档 |
message_text, message_tool_calls |
JSON | AI 消息的文本,或其以 JSON 表示的工具调用 |
在 function_options 中设置函数的选项:
java_regex—mode:matches(默认,整个文本)、find(任意位置)、extract(首个匹配的group组,默认 0)或replace(每个匹配);flags中的i表示忽略大小写。knime_count—modifiers:i表示忽略大小写,w表示按空白之间的完整单词计数。encode和decode—charset,一个 Java 字符集名称;默认为 UTF-8。json_patch_apply—patch,即 JSON Patch 数组或 Merge Patch 对象;merge为 true 表示 Merge Patch;keep表示在补丁测试失败时保留文档。json_schema_check—schema;fail表示在遇到第一个错误时停止步骤,而不是返回该错误。json_normalize—comments允许/* */和//注释;fail(默认 true)在文本不是 JSON 时停止步骤,false 则给出 NULL。json_to_xml—root、item、typed、parent_keys、namespace、text_key和text_key_enabled。xml_to_json—text_key、comments和pis。list_sort_numeric—separator;empty,为没有元素的列表写入的文本;以及missing,缺失元素的文本,排在最后。
默认情况下,步骤读取源的所有列,并写入所有源列,后面跟着输出列。设置 source_columns 可只读取部分列,设置 target_columns(每项为 {source, target, dtype})可选择并排列写入的列。与输出列同名的目标列会取代输出列的位置,并使用给定的数据类型。
- Table Extract — 用于其他文本处理的表达式
- Table Fuzzy Match