嗨我有以下字符串作为服务器的输出。
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzY29wZSI6InNjb3BlOmNsaWVudDppbmNvbWluZz9jbGllbnROYW1lPWplbm55IHNjb3BlOmNsaWVudDpvdXRnb2luZz9hcHBTaWQ9QVA2YmI2NDI1ZmE3MTU3MzdmYjFmYTllMjI1MDk4NjdlMSZhcHBQYXJhbXM9JmNsaWVudE5hbWU9amVubnkiLCJpc3MiOiJBQzI4YmNjYzc0NzQ4ZDAzNzRmNzg5ZjgyN2U0OGMzODNjIiwiZXhwIjoxMzYxNDM0ODY1fQ.q17gvt8ItDmximK2rpS5bHwtsfbk3l-suSx2jXju3Wk
<!-- Hosting24 Analytics Code -->
<script type="text/javascript" src="http://stats.hosting24.com/count.php"></script>
<!-- End Of Analytics Code -->
我想跳过字符串的html部分,即我只想要
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzY29wZSI6InNjb3BlOmNsaWVudDppbmNvbWluZz9jbGllbnROYW1lPWplbm55IHNjb3BlOmNsaWVudDpvdXRnb2luZz9hcHBTaWQ9QVA2YmI2NDI1ZmE3MTU3MzdmYjFmYTllMjI1MDk4NjdlMSZhcHBQYXJhbXM9JmNsaWVudE5hbWU9amVubnkiLCJpc3MiOiJBQzI4YmNjYzc0NzQ4ZDAzNzRmNzg5ZjgyN2U0OGMzODNjIiwiZXhwIjoxMzYxNDM0ODY1fQ.q17gvt8ItDmximK2rpS5bHwtsfbk3l-suSx2jXju3Wk
我想从字符串
中删除以下内容<!-- Hosting24 Analytics Code -->
<script type="text/javascript" src="http://stats.hosting24.com/count.php"></script>
<!-- End Of Analytics Code -->
我应该使用什么方法来检测<!--
并跳过字符串的其余部分?
答案 0 :(得分:4)
如果您尝试删除的分析评论始终位于字符串的末尾,则可以执行以下操作:
String s = "...";
int pos = s.indexOf("<!-- Hosting24 Analytics Code -->");
if (pos >= 0) { s = s.substring(0, pos); }
// continue working with s
如果它位于String中间的某个位置,您可能需要额外的indexOf()调用来查找要删除的内容的开头和结尾。请注意,当找不到子字符串时,此方法返回-1。
s.substring(a, b);
将返回s中从位置a开始并在位置b-1结束的字符的子序列(如果a == b则结果字符串为空)。
答案 1 :(得分:0)
String s = "inputString";
StringBuilder sb = new StringBuilder();
char ch;
boolean check=false;
for(int i=0; i<s.length(); i++)
{
ch = s.charAt(i);
if(ch == '<')
{
check = false;
}
if(ch == '>')
{
check = true;
ch = s.charAt(i);
}
if(check)
sb.append(ch);
}
答案 2 :(得分:0)
试试这个:
str = str.replaceAll("<.*", "");