如何从原始html文本中删除链接?我有:
Foo bar <a href="http://www.foo.com">blah</a> bar foo
并希望得到:
Foo bar blah bar foo
之后。
答案 0 :(得分:2)
您正在寻找使用regexp和this won't work in all but the simplest cases解析HTML,因为HTML不是常规的。更可靠的解决方案是使用HTML解析器。对于许多不同的语言,存在许多。
答案 1 :(得分:2)
sed -re 's|<a [^>]*>([^<]*)</a>|\1|g'
但Brian的回答是正确的:这应该仅用于非常简单的情况。
答案 2 :(得分:0)
尝试:
sed -e 's/<a[^>]*>.*<\/a>//g' test.txt
答案 3 :(得分:0)
$ echo 'Foo bar <a href="http://www.foo.com">blah</a> bar foo' | awk 'BEGIN{RS="</a>"}/<a href/{gsub(/<a href=\042.*\042>/,"")}1'
Foo bar blah bar foo