问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java正则表达式中,Pattern.matches(regex, input)和Pattern.compile(regex).matcher(input).find()的区别

发布网友 发布时间:2022-07-04 16:44

我来回答

3个回答

热心网友 时间:2023-11-23 18:24

第一个返回true是因为 在字符串中result确实能匹配到相对的正则。所以返回true

第二个的话 你看下其方法 matches(String regex, CharSequence input)
CharSequence 是一个借口。字符串String继承了他。所以在这里java.util.regex.Pattern.matches("\\$\\{.*\\}", result)输入也没错
但是下面这个方法抛了错误。直接返回了false。你看下下面的代码吧。不知道是否对的....

package com;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class TestOf {
public static void main(String[] args) {
String result = "${jboss.home}\\image";
String pat_str="\\$\\{.*\\}";
System.out.println(matcherAI(result, pat_str));
System.err.println(java.util.regex.Pattern.matches("\\$\\{.*\\}", result));
System.out.println(patternMatch(result, pat_str));
}

public static boolean matcherAI(String result,String pat_str){
Pattern pattern=Pattern.compile(pat_str);
Matcher matcher=pattern.matcher(result);
return matcher.find();
}

public static boolean patternMatch(String result,String pat_str ){
Pattern pattern=Pattern.compile(pat_str);
System.out.println(pat_str.length());
CharSequence sc=pat_str.toString();
System.out.println(sc);
// System.out.println(pattern.m);
return pattern.matches(result, sc);
}

}

热心网友 时间:2023-11-23 18:24

matches要求字符串整个匹配正则表达式,你的表达式最后是“}”,而字符串后面还有\\image,所以返回false.
find要求字符串的一部分匹配表达式即可。

热心网友 时间:2023-11-23 18:25

可以

Pattern.compile(regex, CASE_INSENSITIVE | DOTALL);

多个值 罗辑或
请参考
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
人类如何才能悬浮在空中? - 知乎 人体悬浮术是真的存在吗 人体怎样才能真正的在空中悬浮 小孩c蛋白反应高是什么原因 (2014?南海区二模)如图所示,物重G为2000N,小红用800N的拉力花2s的时间... 苹果13系列升级iOS15.5好吗? 出生2o12年11月20日2点姓石光字辈取名 求龙凤胎名字:2012年6月21日(农历5月初3)凌晨0点40分出生,大的为龙,小... by和take有什么区别 takeby后面跟交通工具的区别 java中 Pattern.matcher 可以设置超时吗 蒋鸿阳这个名字好不好 何鸿阳这个名怎么样 鸿阳名字的含义 new a student she ls?造句 神灵涂炭咋的造句叻? (新生,多多指教!) 试用下列各词,分别造几个句子来说明哪些是同音词,哪些是多义词.新生,杜鹃,疙瘩,苦. 用早晨,朝阳,新生三个词造句 造句:新生,迎接 三星9100现在值得买吗? 三星9100现在还值得买吗? 三星9100这部手机怎么样? 上环对身体好吗 弄丢别人的身份证该怎么办? 总角之交是几岁呢? 劳务派遣把我的身份证弄丢了我该怎么办? 别人弄丢了我的身份证,驾驶证,行驶,该怎么赔偿我? 把别人身份证弄丢了怎么赔偿 mac系统 做软件的UI用什么工具 河北城投投资有限公司怎么样? 小区绿化种植哪些植物省钱 小区绿化一般种什么矮小的绿色的植物- 问一问 格力空调吹风不制冷,排水管也不出水- 问一问 电脑上的qq安装了7.2最新版的,就打不开了,显示安全组件错误什么的,病毒也查杀了,老是这样,卸载 QQ从57级,每天7.2的速度,多久能到达64级? 谁有同济大学第七版的教材pdf或者word ?谢谢分享哦!想学好高数! 追是什么动物 野心勃勃,路人皆知。追!猜生肖 后方有八追,猜生肖? 对于经常发脾气的孩子,家长应该如何引导? 谷歌商店有没有五美元的礼品卡 安史之乱开始时间和结束时间,爆发的原因是什么,用一句话概括安史之乱的影响? 现在网络工程师前景怎么样? 华为荣耀60怎么连接加密网络 手机贷现金分期等待确认要多久啊!哪位大神知道 何为套路贷?都有哪些表现? 烦请英文高手翻译下(中译英) 下面这段英语要怎么翻?谢谢! 企业法人营业执照翻译,急,在线等 商务翻译5