java – *和**的区别
发布时间:2020-12-15 04:34:04 所属栏目:Java 来源:网络整理
导读:*和**有什么区别?为什么.**在使用pattern.compile(“.**”)时没有编译;? 解决方法 请参阅 Java Quantifiers 参考: Greedy Reluctant Possessive MeaningX? X?? X?+ X,once or not at allX* X*? X*+ X,zero or more timesX+ X+? X++ X,one or more timesX{
*和**有什么区别?为什么.**在使用pattern.compile(“.**”)时没有编译;?
解决方法
请参阅
Java
Quantifiers参考:
Greedy Reluctant Possessive Meaning X? X?? X?+ X,once or not at all X* X*? X*+ X,zero or more times X+ X+? X++ X,one or more times X{n} X{n}? X{n}+ X,exactly n times X{n,} X{n,}? X{n,}+ X,at least n times X{n,m} X{n,m}? X{n,m}+ X,at least n but not more than m times 没有**量词.当你使用after,*或? (或者甚至是{n,m}),您可以创建占有量词(参见上表),但在*之后添加*量词被视为用户错误. 这就是为什么.*将匹配除换行符之外的0个字符(没有Pattern.DOTALL修饰符)和.**抛出异常. 请注意,在线正则表达式测试人员还会警告您此问题:Dangling meta character ‘*’ near index 2 .** ^(同样的警告出现在OCPSoft regex tester). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |