You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过SPARQL正则表达式从Turtle文件过滤指定三元组?

修正后的SPARQL查询方案

要精准提取符合要求的列表类资源rdfs:label三元组,你可以通过两个过滤条件组合实现:

  • 过滤掉包含terms路径的资源URI
  • 确保资源URI以数字结尾

以下是修正后的查询语句:

SELECT ?list ?label
WHERE {
  ?list rdfs:label ?label .
  # 排除含"terms"路径的资源
  FILTER (!CONTAINS(STR(?list), "terms"))
  # 只保留URI末尾为数字的资源
  FILTER (REGEX(STR(?list), "[0-9]$"))
}

关键过滤逻辑说明

  1. !CONTAINS(STR(?list), "terms"):将资源URI转换为字符串后,筛选出不包含"terms"的条目,直接排除术语类资源。
  2. REGEX(STR(?list), "[0-9]$"):通过正则表达式匹配URI字符串的最后一位是否为0-9的数字,确保仅保留列表类资源。

如果之前的查询失效,大概率是过滤逻辑写反(比如用了CONTAINS而非!CONTAINS),或者正则未精准匹配URI末尾的数字。

内容的提问来源于stack exchange,提问作者rshar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 17:17:04