问题描述
我查看,字符串中是否存在“80,”或者"80,"或者",80,"这三种情况,例如:"169,172009012410208000000,1,80,193,186,185" 返回存在或者不存在String str = "169,172009012410208000000,1,80,193,186,185";boolean flag = str.matches("正则表达式");请教各位,这个正则该如何写呢 问题补充:pwc_pengwenchao 写道
解决方案
Pattern.compile("^.*((80,)|(,80))+.*$");这样.
解决方案二:
Pattern.compile("^.*(((80,)+)|((,80,)+)|((,80)+)).*$");你的加工下就行了.不过看起来有点哆嗦,试试优化下.
解决方案三:
引用这种条件是不能满足的:169,172009012410208000000,1,1801,10,193,186,185,80 这个...题意不符啊...引用我查看,字符串中是否存在“80,”或者"80,"或者",80,"这三种情况,例你没说有 ",80" 的.......
解决方案四:
引用有种情况避免不了啊:如String str = "169,172009012410208000000,1,180,10,193,186,185"; 这也是返回到的true,我只要找单个的80, 是返回true的啊,我的意思是:",80," 这种情况是在 "80," 之后的,如果有"80,"存在就可以返回true了.Pattern.compile("^.*(80,)+.*$"); 可以满足了.
解决方案五:
不用判断左边的逗号了吧? 引用我查看,字符串中是否存在“80,”或者"80,"或者",80,"这三种情况,例这是2种情况吧,有"80,"就行了?Pattern.compile("^.*(80,)+.*$");
解决方案六:
boolean flag = str.matches("^.*,?80,?.*$");