在网站上做了一个功能是需要用户去输入正则表达式的,因为会卡死我将它放入了Executorservice的一个定时任务中,虽然曝出了超时的异常但是无法结束,后来才知道是因为结束子线程是非抢占式的,想去继承修改matcher,可是它是final类,matcher本身也没有这类异常可以用来处理,感觉走投无路了。我看网上有一些在线测试正则表达式的,他们是怎么做到的?很好奇?思路是什么呢?
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
正则中的matcher.find如果出现卡死时如何结束?
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
1条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
oyljerry 2017-10-05 01:26关注本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2021-07-02 18:15回答 1 已采纳 1.find()方法是部分匹配,是查找输入串中与模式匹配的子串,如果该匹配的串有组还可以使用group()函数。matches()是全部匹配,是将整个输入串与模式匹配,如果要验证一个输入的数据是否为数
- 2023-01-03 21:58回答 2 已采纳 代码如下,望采纳,谢谢! // 只比你原来的代码多了:[^(您的号码已办理)] Pattern pattern = Pattern.compile("(?<=[1-9]+:(您的号码已?办理)?
- 2017-03-02 07:46回答 6 已采纳 对于这类xml格式,最好不用正则匹配,处理会很麻烦 可以用xml类库来解析 http://www.ibm.com/developerworks/cn/xml/dm-1208gub/
- 2022-05-18 11:19此刻不是此刻的博客 matcher.find()一直为false的问题
- 2018-07-03 11:14回答 6 已采纳 文档里很清楚: find public boolean find()尝试查找与该模式匹配的输入序列的`下一个`子序列。 此方法从匹配器区域的开头开始,如果该方法的前一次调用成功了并且从那时开
- 2022-08-23 11:07回答 1 已采纳 你显示的加上^或者*号用来区分是否必须从头开始匹配
- 2014-12-11 02:25回答 2 已采纳 首先这个是JDK的bug。到目前没解决。可以到网上搜索。 其次,为了避免死循环,应该避免正则表达式匹配循环次数过多,那样就会陷入死循环。 所以,需要重新修改下正则表达式。 可以参考这篇文
- 2021-04-08 15:54天狼1222的博客 Java 正则表达式 m.find() 一直为true 知识点: * 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。 + 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+...
- 2019-08-23 08:59回答 4 已采纳 (?<=\'Text\'\:').+?(?=\') 示例代码: ``` String pattern = "(?<=\\'Text\\':').+?(?=\\')";
- 2023-01-17 17:25回答 1 已采纳 您可以使用正则表达式的"零宽断言"来实现只用一条正则表达式的校验。零宽断言允许你指定一个条件,在匹配的过程中检查这个条件是否满足。比如说,在本题中,您可以使用(?=...)来检查首位是否是34569,
- 2021-12-09 14:42回答 1 已采纳 你是windows还是linux在windows下建立txt,默认的编码格式是ANSI你要改成UTF-8才行
- 2021-02-27 15:34weixin_39782752的博客 1.find()方法是部分匹配,是查找输入串中与模式匹配的子串,如果该匹配的串有组还可以使用group()函数。matches()是全部匹配,是将整个输入串与模式匹配,如果要验证一个输入的数据是否为数字类型或其他类型,一般要...
- 2023-10-24 17:02天上的西红柿的博客 java正则表达式之find与matches
- 2020-10-16 13:12在Java中,正则表达式相关的操作主要集中在java.util.regex包中,主要包括两个类:Pattern类与Matcher类。Pattern类用于编译正则表达式模式,而Matcher类则用于对输入字符串进行模式匹配。 Matcher类的group方法是...
- 2020-10-19 15:04nohup213的博客 import java.util.regex.Matcher; import java.util.regex.Pattern; public class GroupIndexAndStartEndIndexTest { /** * @param args */ public static void main(String[] args) { // TODO ...
- 2020-06-23 15:48四只脚的小毛驴的博客 JAVA正则表达式matcher.find()和 matcher.matches()的区别 1.find()方法是部分匹配,是查找输入串中与模式匹配的子串,如果该匹配的串有组还可以使用group()函数。 matches()是全部匹配,是将整个输入串与模式匹配,...
- 2022-03-24 15:58多比朋友的博客 正则表达式底层实现 matcher.find()
- 2021-03-08 17:57龙憩的博客 java中正则匹配 group是针对()来说的,因为你匹配到的结果是一组,group(0)就是指的整个串,group(1) 指的是第一个括号里的东西,group(2)指的第二...import java.util.regex.Matcher;import java.util.regex.Patte...
- 2023-11-03 15:43梁云亮的博客 matcher.find()和matcher.matches()是Java中Matcher类的两个方法,它们用于在一个字符串中进行正则表达式的匹配操作,但它们之间有一些区别。matcher.find():用于在字符串中查找任何匹配的子序列,可以进行多次调用...
- 2020-02-02 17:42Naive201408的博客 String str = "Hello,World! in Java."; Pattern pattern = Pattern.compile("W(or)(ld!)"); Matcher matcher = pattern.matcher(str); while(matcher.find()){ System.out.pr...
- 没有解决我的问题, 去提问