我想在SPARQL GraphDB查询中只提取url的基。例如,www.schema.org代替http://www.schema.org/archive
我尝试通过使用绑定和替换函数匹配完整的URL,然后将基作为一个组捕获。然而,这似乎不能正常工作。我猜我在正则表达式中做错了什么?
#2001年5月在线发表的文章的托管网站是什么,James Hendler是其作者之一?
PREFIX : <http://www.mysemantics.com/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT ?hostingWebsite
WHERE {
?article a :Article .
?article :datePublished "2001"^^xsd:date .
?article :hasAuthor :JamesHendler .
?article :url ?url .
BIND(REPLACE(?url, ".*://(.*?)/.*", "$1") AS ?hostingWebsite)
}
1条答案
按热度按时间rxztt3cl1#
你就差一点!URI不是字符串,因此您需要首先转换为字符串: