簡體   English   中英

如何在SPARQL中過濾DBpedia結果

[英]How to filter DBpedia results in SPARQL

我有一個小問題...如果我有這個簡單的SPARQL查詢

SELECT ?abstract 
WHERE {
<http://dbpedia.org/resource/Mitsubishi> <http://dbpedia.org/ontology/abstract> ?abstract.
FILTER langMatches( lang(?abstract), 'en')}

我有這個結果: SPARQL結果 ,它具有非英語字符...是否有任何想法如何刪除它們並僅檢索英語單詞?

您需要准確定義結果中需要和不需要的字符,但是您可以使用replace將范圍之外的字符替換為例如空字符串。 如果您想排除所有基本拉丁,拉丁1補充,拉丁擴展A和拉丁擴展B范圍(最終為\\ u0000– \\ u024f),則可以執行以下操作:

SELECT ?abstract ?cleanAbstract
WHERE {
  dbpedia:Mitsubishi dbpedia-owl:abstract ?abstract 
  FILTER langMatches( lang(?abstract), 'en')
  bind(replace(?abstract,"[^\\x{0000}-\\x{024f}]","") as ?cleanAbstract)
}

SPARQL結果

甚至更簡單:

SELECT (replace(?abstract_,"[^\\x{0000}-\\x{024f}]","") as ?abstract)
WHERE {
  dbpedia:Mitsubishi dbpedia-owl:abstract ?abstract_
  FILTER langMatches(lang(?abstract_), 'en')
}

SPARQL結果

三菱集團(MitsubishiGurūpu)(也稱為三菱集團公司或Mitsubishi Companies)是一組由日本人自主經營的跨國公司,涵蓋了擁有三菱品牌,商標和遺產的一系列業務。形成一個松散的實體,即三菱Keiretsu,在日本和美國媒體和官方報道中經常提及; 通常,這些公司都來自同名的zaibatsu。 前25名公司也是三菱Kin'yōkai(“星期五俱樂部”)的成員,每月舉行會議。 此外,還設有Mitsubishi.com委員會,以通過門戶網站促進三菱品牌的交流和訪問。

您可能會在Unicode Wikipedia文章中找到拉丁腳本

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM