同一个正则表达式语句在JAVA和JAVASCRIPT中得到的结果为什么不一样呢?

匹配ab中的"%"JAVA中的语句:StringregEx="[%?]+";Stringab="123%";Pattern.matches(regEx,"123%");上... 匹配ab中的"%"
JAVA中的语句:

String regEx = "[%?]+";
String ab = "123%";

Pattern.matches(regEx, "123%");

上面得到的结果是false,只有当ab等于%或?结果才会是true;

然而我用同样的语句到js中去做测试,结果是能匹配出"%"这个符号的;

java和javascript在正则表达式中区别这么大?要达到我上述的要求在JAVA中应该如何做呢?
匹配ab中的“%”或"?"或"%?"
展开
 我来答
madiot
2014-10-14
知道答主
回答量:5
采纳率:0%
帮助的人:7204
展开全部
题主的出发点有点奇怪,要匹配 % 只要一个 "%" 就可以了
字串 "[%?]+" 的意思是%和?或两者的组合都可以匹配
追问
对啊。。这就是我要的
追答
如果不是全字符匹配应该用Matcher.find()吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yugi111
推荐于2016-01-15 · TA获得超过8.1万个赞
知道大有可为答主
回答量:5.1万
采纳率:70%
帮助的人:1.3亿
展开全部
var reg = /[^%]*%.*/;
var str = "aa";
reg.test(str)

String reg = "[^%]*%.*";
String str = "bc%dd";
System.out.println (str.matches (reg));
更多追问追答
追问
能否简单解释下啊
追答
从前往后找,找到%就罢休
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式