我正在使用包含单词“Español”的HTML文档,但是在源代码中它写为“ Españ ol”(添加了空格,因此浏览器不会自动更改它)
如果我这样做,则找不到“Español”:
if (source.contains("Español"))
System.out.println("Found it");
如果我这样做,则会发现单词:
if (source.contains("Español"))
System.out.println("Found it");
任何人都可以洞悉正在发生的事情吗?
最佳答案
从HTML获取文本后,您需要首先将HTML转义的字符(例如ñ
)转换为Unicode字符(ñ
)。好的方法是使用Apache Commons Lang library。
在您的情况下:
input = StringEscapeUtils.unescapeHtml4(input);
将执行HTML-> Unicode转换。