我有一个String,我想替换它:
src="test.jpg" -> src="file://test.jpg"
src="http://xxx...." -> untouched
事实上,我将src="
替换为src="file://
,但如果它以http
开头,我不想替换它,例如src="http
。
所以我写了这个正则表达式,用src="
替换src="file://
:
html2.replaceAll("src=\"","src=\"file://");
但问题是这也匹配src="http
。
我不知道如何为此构建正则表达式。我认为我可以这样做,但它不起作用:
html2.replaceAll("src=\"[^(http)]","src=\"file:///android_asset/verkehr/");
答案 0 :(得分:5)
我认为你想要一个零宽度的负向前瞻。
html2.replaceAll("(src=\"(?!http://))", "src=\"file:///");
但请注意其他协议,如https,ftp等。
答案 1 :(得分:2)
你想要一个消极的期待。 html2.replaceAll( “SRC = \”(?HTTP)” ,, ...
答案 2 :(得分:2)
使用带有负向前瞻的正则表达式:
src=\"(?!http://)