- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
有什么方法可以用 Java 编写一个 正则表达式
来判断 String
是否包含奇数个特定字符,即 "a"
?我已经完成了编写更冗长的代码,即使用以下方法:
public static boolean hasEvenNumber(String s) {
int count = 0;
Pattern p = Pattern.compile("(^a)*(a)");
Matcher m = p.matcher(s);
while (m.find())
count++;
if (count % 2 != 0)
return true;
return false;
}
例如,如果将字符串 "jsadaajaaikadjasl"
作为参数传递,则它返回 true,因为它包含 7 个 "a"
。是否有更优雅的方法来实现它,只使用 regex
并像这样检查它:
Pattern p = Pattern.compile(...);
Matcher m = p.matcher(s);
if(m.matches())
return true;
?
最佳答案
只需创建一个匹配偶数的模式,如 "(?:[^a]*a[^a]*a)*"
添加另一个事件,(?: [^a]*a[^a]*a)*[^a]*a[^a]
。现在,如果 matcher.matches
返回 true
,则出现的次数为奇数。
关于java - 正则表达式查找特定字符在字符串中是否存在奇数次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18875038/
http://opencv-code.com/quick-tips/implementation-of-guo-hall-thinning-algorithm/ 在看郭霍尔算法,但我不明白它说的那部分
我知道这个方法检查整数是否为偶数,但是具体如何检查呢?我理解斐波那契或阶乘等例子的递归是如何工作的,但不理解这个。我认为由于语法原因我不明白。 // Assume n >= 0 public stat
我被困在一个作业上,需要程序接受多个数字,然后如果是奇数则输出"is",如果是偶数则输出“否”,并且不知道如何让程序接受超过 1 个 int,然后输出正确的 println。这是我到目前为止的代码。
这个测试行得通吗?: if (testInt/2).ofType(Integer){ //to-do if even } 我假设它会 iff 编译器在 ofType() 之前解析 testIn
我正在尝试更好地排列图像,而不仅仅是 1 列中的图像。示例见附件,每篇文章的图片可以在左右。 这是我的代码。HTML: Content 1
DAY16共3题: 奇♂妙拆分(简单数学) 区区区间间间(单调栈) 小AA的数列(位运算dp) 🎈 作者:Eriktse 🎈 简介:19
我是一名优秀的程序员,十分优秀!