用sparql中的正则表达式分割逗号分隔的字符串

问题描述 投票:3回答:1

我必须对SPARQL中的regex()提出疑问。我想将一个变量替换为一个变量,该变量有时包含一个带有逗号的短语,而另一个变量仅包含逗号之前的内容。例如,如果变量包含“我喜欢它,好”,我想获取一个包含“我喜欢它”的新变量。我不知道要使用哪些常规表达式。

regex sparql
1个回答
5
投票

这是strbefore的用例,您根本不需要strbefore。作为一般提示,我建议您阅读(或略读)regex第17节的目录。它列出了所有SPARQL函数,虽然您不需要记住所有功能,但至少可以了解其中的功能。 (这对所有程序员和语言都是一个很好的建议:浏览目录和索引。)此查询1显示如何使用SPARQL 1.1 Query Language Recommendation

strbefore
select ?x ?prefix where { 
  values ?x { "we invited the strippers, jfk and stalin" }
  bind( strbefore( ?x, "," ) as ?prefix )
}

1。参见--------------------------------------------------------------------------- | x | prefix | =========================================================================== | "we invited the strippers, jfk and stalin" | "we invited the strippers" | ---------------------------------------------------------------------------

© www.soinside.com 2019 - 2024. All rights reserved.