求个正则表达式

2018-01-05 15:42:29 +08:00
 lixueyu001

<%@page import="org.apache.log4j." %> 提取出来中间的包名 org.apache.log4j.

<% log.debug("InputSQL===:"+SQL); …… %> 提取出来中间的代码

真头疼啊不会正则 谢谢各位啦

2815 次点击
所在节点    Java
9 条回复
littleW2B
2018-01-05 16:04:18 +08:00
这个吗(?<=").*?(?=")
Telegram
2018-01-05 16:05:40 +08:00
第一个大概是这样:
(?<=import=").*(?=")
第二个大概是:
(?<=log.debug\(").*(?=\))
littleW2B
2018-01-05 16:10:49 +08:00
@Telegram 如果是同一行有多个“,.*可能会一直匹配到最后
nondanee
2018-01-05 16:15:49 +08:00
String pattern = "<%@page import=\"([^\"]+)\" %>" match 取 group(1)

String pattern = "<% log.debug\\(([^\\)]+)\\);"; match 取 group(1)

这样?
Telegram
2018-01-05 16:24:07 +08:00
@littleW2B #3 那是的,不过我看一般 import 里应该不会出现双引号吧
linatiny
2018-01-05 16:26:36 +08:00
<%@page import="(.*?)" %>
<% log.debug\("InputSQL===:"\+(.*?)\);.*?%>
这样?
neosfung
2018-01-05 18:01:48 +08:00
.+([^"]+).+
.+([^(<%)(%>)]+).+
bxb100
2018-01-05 18:07:10 +08:00
看看 tomcat 怎么实现的
thinkmore
2018-01-09 10:17:07 +08:00
第一个: (?<=").*(?=")
第二个:(?<=<%).*(?=%>)

java7 测试通过

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/420355

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX