我有dbpedia的NTriple文件。其中一些包含非绝对URI,URI不以http://开头。这导致解析问题。
即。我有一些三元组,其URI类似于< www.example.com>而不是< http://www.example.com>
我想通过否定它们来惹它们。
我试过,失败了,用grep -v“^(< http)”。
有什么建议吗?
修改
我可能错误地指出了我的观点。这些URI不一定在行的开头。这是我使用'^'运算符作为NOT的错误。 另外,我想用grep -v。
来解决它们以下是一些示例行:
< HTTP://dbpedia.org/resource/Petrodvorets_Watch_Factory> < HTTP://xmlns.com/foaf/0.1/homepage> < www.raketa.su>
< HTTP://dbpedia.org/resource/ABS_network> < HTTP://xmlns.com/foaf/0.1/homepage> < www.absn.tv>
答案 0 :(得分:2)
grep -P '^(?!<http).*'
(?!...)是一个负面的先行 我没有测试它,所以如果你不工作,搜索网页 '正则表达否定前瞻' 应该做的工作
答案 1 :(得分:1)
要处理每行多个URI,工作正则表达式是:
grep -P'&lt;(?! http(s)?:\ / \ /)。*&gt;',开头。
答案 2 :(得分:0)
“^(&lt; http)”仅在“&lt; http”位于该行的开头时匹配。在你的情况下这是真的吗?