Sparql:最后一个之后的字符串



假设我有一些这样的三元组

:a ex:fileName "abc.txt".
:b ex:fileName "another.file.doc".

假设我想创建一个 SPARQL 查询,返回我没有文件扩展名的文件名?喜欢

"abc"
"another.file"

SPARQL是否有一种简单的方法来执行诸如"最后之前的子字符串"之类的操作?

您可以将REPLACE()与匹配的正则表达式一起使用:

SELECT ?file ?filename
WHERE {
  ?file ex:fileName ?rawFilename .
  BIND( REPLACE( ?rawFilename , '\.[^.]*$', '' ) AS ?filename )
}

最新更新