我试图在字符串中伪翻译嵌入HTML中的文本。我不想触及实际的html标签或其归属,只是内容。
例如,如果我有类似的东西:
<td colspan='2'><a>This is a Text in <b>Bold</b></a></td>
我希望最终将其修改为
<td colspan='2'><a>Thìs ís à Tèxt îñ <b>Bòlð</b></a></td>
1)我无法使用任何第三方库,所以我使用标准正则表达式解析html 2)我尝试了pattern.match()和pattern.split(),但似乎都有一些限制。 pattern.split()有助于根据正则表达式模式拆分字符串,但是我丢失了该进程中的实际模式。 Pattern.match有助于保留模式,但我不能保证标记。
理想情况下,我希望能够通过HTML获取字符串并将其分解为类似
的数组array[0]: HTML Tag
array[1]: Plain Text
array[2]: HTML Tag
array[3]: Plain Text
array[4]: HTML Tag
array[5]: Plain Text
array[6]: HTML Tag
有什么想法吗?
答案 0 :(得分:0)
作为正则表达式,您可以使用this one:
(?<=>)[^>]+(?=<)
我在这里假设你有一个替换函数可以捕获一个被捕获的组并将其文本混合:
String str = "<td colspan='2'><a>This is a Text in <b>Bold</b></a></td>";
str.replaceAll("(?<=>)[^>]+(?=<)","");
但是,如果不知道你打算怎么打算假翻译&#34;一个字符串,我们无法真正帮助你。对于自定义替换方法,this answer可能很有用。