我在从java中的文本文件中删除htmls标记时遇到问题。我知道使用像
这样的东西会很容易str=str.toString().replaceAll("\\<.*?>","");
但是,我想知道我是否可以分割字符串并完成并替换来自&lt;的所有内容。到&gt;用“”。
我试过
String [] str= "<tag>with some string </tag>";
String s="";
for (i=0; i < str.length; i++)
{
if (str[i].toString()=="<")
{
str[i]="";
}
else if (str[i].toString()==">")
{
s=s+str[i+1];
}
}
当我尝试打印新字符串s时,它只打印出白色空格。 谢谢你的帮助
答案 0 :(得分:1)
你需要一些表示你在标签内的标志变量,当你不在标签中时添加第三种情况,所以剩下的内容被添加到字符串中。例如:
String [] str= "<tag>with some string </tag>";
String s="";
boolean inTag = false;
for (i=0; i < str.length; i++)
{
if (str[i].toString()=="<")
{
inTag = true;
}
else if (str[i].toString()==">")
{
inTag = false;
}else{
if (!inTag)
s = s + str[i];
}
}
答案 1 :(得分:0)
答案 2 :(得分:0)
要从文本文件中删除html标记,请查看此论坛中之前讨论过的this主题