select distinct ?abstract where {
[ rdfs:label "Rome"@en ;
dbpedia-owl:abstract ?abstract ]
filter langMatches(lang(?abstract),'en')
}
罗马(/roʊm/;意大利语:罗马语发音[roːma];拉丁语:Rōma)是意大利的一个城市和特殊的社区(名为“Roma Capitale”)......
我如何删除“(/roʊm/;意大利语:罗马语发音[roːma];拉丁语:Rōma)”,其中包含不可读的字符(即发音指南)?
答案 0 :(得分:1)
您可以使用这样的查询删除括号中的文字:
select ?abstract ?cleanAbstract where {
values ?x { dbpedia:Rome }
?x dbpedia-owl:abstract ?abstract
filter langMatches(lang(?abstract),'en')
bind( replace( str(?abstract), '\\([^(]*\\)', "" ) as ?cleanAbstract )
}
?摘要:罗马(/roʊm/;意大利语:罗马语发音[roːma];拉丁语:Rōma)是意大利的一个城市和特殊的社区(名为“Roma Capitale”)。罗马是意大利的首都,也是罗马省和拉齐奥地区的首府。拥有270万居民,面积1,285.3平方公里(496.3平方英里),也是全国最大的......
?cleanAbstract:罗马是意大利的一个城市和特色社区。罗马是意大利的首都,也是罗马省和拉齐奥地区的首府。拥有270万居民,面积1,285.3平方公里,也是全国最大的......
当然,发音不是括号中唯一的发音。例如,平方英里的面积用括号表示。但是,如果摘要遵循一般约定,可以删除括号中的文本而不更改文本的基本内容,这可能对您有用。当然,您可以改进正则表达式以更好地处理括号周围的空格,或者只删除具有某些“非典型”字符的空格,如果您可以定义一些。