首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

求一 正则表达式,该如何处理

2012-01-11 
求一 正则表达式请问用正则如何配匹出ASP网页中所有的ASP代码,例如:%开始% 这里是html代码12345% a

求一 正则表达式
请问用正则如何配匹出ASP网页中所有的ASP代码,例如: 
<%'开始%>
这里是html代码12345 
<%
a="这里是asp代码%"
response.write a
%> 
这里是html代码56789 
<%
b="这里是asp代码2"
response.write b
%> 

即:得出 
<%'开始%> 
<% 
a="这里是asp代码%" 
response.write a 
%> 
<% 
b="这里是asp代码2" 
response.write b 
%> 

--------------------
参考:我用这个"<%((.|\r\n)[^%>]*)%>"可以得出 
<%'开始%> 
<% 
b="这里是asp代码2" 
response.write b 
%> 

但是得不出 
<% 
a="这里是asp代码%" 
response.write a 
%> 

请问我哪个地方写错了????????

[解决办法]
[^% >]已经说明不可以为%或>,所以如果你的ASP代码中有%或>则不行了!
[解决办法]

Java code
        StringBuffer sb = new StringBuffer("");        sb.append("test \r\n");        sb.append("<%  \r\n");        sb.append("a=\"asfdsaf%\"  \r\n");        sb.append("response.write a  \r\n");        sb.append("%>  \r\n");        sb.append("tttt  \r\n");        sb.append("<%  \r\n");        sb.append("b=\"2323423sdfasdf2\"  \r\n");        sb.append("response.write b  \r\n");        sb.append("%>\r\n");        Pattern p = Pattern.compile("<%(.|\r\n)*?(?=%>)%>");        Matcher m = p.matcher(sb.toString());                while(m.find()){            System.out.println("1: "+m.group(0));        }
[解决办法]
大菜鸟 果然不同凡响 呵呵
正则很厉害啊 
佩服

热点排行