社区
Web 开发
帖子详情
正则表达式的问题
soho00222
2006-03-14 02:24:42
正则表达式的字符为
(?<=(<a href=.*sbl.lasso\?query=SBL(\d+).*>))(SBL\d+).*(?=\</a>)
报错,java.util.regex.PatternSyntaxException: Look-behind
group does not have an obvious maximum length near index 43
43的位置为")"
这段正则表达式有 问题吗?请指教,在JAVA中,用正则表达式要注意哪些特殊符号呢
...全文
217
8
打赏
收藏
正则表达式的问题
正则表达式的字符为 (?<=())(SBL\d+).*(?=\) 报错,java.util.regex.PatternSyntaxException: Look-behind group does not have an obvious maximum length near index 43 43的位置为")" 这段正则表达式有 问题吗?请指教,在JAVA中,用正则表达式要注意哪些特殊符号呢
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
低调的小青蛙
2006-03-14
打赏
举报
回复
{1,10000}
其实选择 10000 是随意的,就是选一个大一点的,没必要太大
soho00222
2006-03-14
打赏
举报
回复
tt
soho00222
2006-03-14
打赏
举报
回复
那"+"号用什么代替?
低调的小青蛙
2006-03-14
打赏
举报
回复
搂主的问题我遇到过,这是 java 的正则表达式的原因,算不上错误。
java 的正则表达式中,反向预搜索(?<=xxxxxx)中的表达式,不能有 "*", "+" 等能匹配无限长度的表达式。搂主只能使用 ".{0,10000}" 来代替 ".*"
搂主的表达式本身没有问题,只是 java 的正则表达式有这个局限。
更多关于正则表达式的讲解与举例,参考文章:
http://www.regexlab.com/zh/regref.htm
soho00222
2006-03-14
打赏
举报
回复
把"\"换成"\\"了
soho00222
2006-03-14
打赏
举报
回复
public static String getBody(String html) throws Exception {
String sblregex = "(?<=(<a href=.*sbl.lasso\\?query=SBL(\\d+).*>))(SBL\\d+).*(?=\\</a>)";
System.out.print(sblregex);
Pattern pattern = Pattern.compile(sblregex);
Matcher m = pattern.matcher(html);// 理解成创建匹配器
boolean result;
result = m.find();
int i = 0;
while (result) {
i++;
for (int j = 1; j <= m.groupCount(); j++) {
System.out.println("匹配结果" + i + "" + m.group(j));
}
// 继续查找下一个匹配对象
result = m.find();
}
return html;
}
believefym
2006-03-14
打赏
举报
回复
java.util.regex.Pattern
believefym
2006-03-14
打赏
举报
回复
关于正则式具体可以看java.util.Pattern的api doc,讲得很详细
如果要找错,楼主不妨把代码多贴一点
Linux基础之
正则表达式
正则表达式
:又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。
正则表达式
通常被用来检索、替换那些符合某个模式(规则)的文本。
正则表达式
是对字符串...
中文
正则表达式
匹配-正则中文匹配
原文链接:...\w匹配的仅仅是中文,数字,字母,对于国人来讲,仅匹配中文时常会用到,见下匹配中文字符的
正则表达式
: [\u4e00-\u9fa5]或许你也需要匹配双字节字符,中文也是双...
Java
正则表达式
之“\\“理解
相信很多人在使用
正则表达式
的时候都会遇到如下的语句: 通过查阅
正则表达式
的API文档可以了解到
正则表达式
的语法知识: 很多小伙伴就会产生疑问为什么语法是"\d"(或是"\D"、"\w"),为什么在语句中使用的...
正则表达式
在线自动生成器
正则表达式
的强大众所周知,它令程序员的头痛程度也数一数二的。最近我发现了一个网站,txt2re,能够自动为你生成
正则表达式
,而且很灵活,在这里推荐一下。 网址: http://www.txt2re.com/ http://txt2re.com/ ...
C++
正则表达式
教程:C++ 中的
正则表达式
与示例
C++
正则表达式
教程解释了 C++ 中
正则表达式
的工作,包括
正则表达式
匹配、搜索、替换、输入验证和标记化的功能。 几乎所有的编程语言都支持
正则表达式
。 C++ 从 C++11 开始直接支持
正则表达式
。除了编程语言之外,...
Web 开发
81,122
社区成员
341,744
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章