一个字符串大约为15000的长度,匹配的数比较多,出错
S=S.replaceAll("<script((.|\n)+?)</script>","");请问应该怎么样解决 at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
......
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
......
S=S.replaceAll("<script((.|\n)+?)</script>","");请问应该怎么样解决 at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
......
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4027)
at java.util.regex.Pattern$Dot.match(Pattern.java:3524)
at java.util.regex.Pattern$Branch.match(Pattern.java:3928)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:3968)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4157)
......
解决方案 »
- 类名 对象名 = new 类名(); ???
- 表单提交
- 请问谁知道用Eclipse设计Swing时,serialVersionUID是什么东西啊
- java 多媒体
- java 开源的代码生成工具
- 请问如何调用windows的动态连接库来改变界面?
- sql server 2000和jdbc for sql server 2002都安装好了,但还是出错。
- 各位路过的高手,进来瞧一瞧,看一看了!关于多层CS软件大讨论--JAVA?.NET?谁比较好用!!!
- 关于swing中的一个问题,向各位朋友请教
- 新手学Javascript应从那方面入手?
- 看了一段代碼,但少了點東西。想知道怎麼填上去。
- java哪个基础类可以改变文件的权限?
public static void main(String[] args) {
StringBuffer buffer=new StringBuffer();
for(int i=0;i<10000;i++)
{
buffer.append("aaaa<script>alert('123123');</script>1111"+i+"\n");
}
String str=buffer.toString();
str=str.replaceAll("<script>((.|\n)+?)</script>","---");
System.out.println(str);
}
Pattern pa = Pattern.compile(labelRegex, Pattern.CASE_INSENSITIVE);
Matcher ma = pa.matcher(_String);
int labelBeginCount = 0;
int labelEndCount = 0;
int endLabel = 0 ;
StringBuffer s = new StringBuffer(100);
while(ma.find()) {
if(ma.group().equalsIgnoreCase("<script")){
labelBeginCount++;
s.append(_htmlString.substring(endLabel,ma.start()));
}
else {
labelEndCount++;
if(labelBeginCount == labelEndCount)endLabel = ma.end();
}
}
s.append(_htmlString.substring(endLabel));
return s.toString();