在Java中,有没有办法说...例如"这个词是否包含Z三次?"
我猜可能会有一些聪明的char值?
String word = "pizzaz"
// Check if word contains three z's
boolean b = word.contains("SOME CLEVER CHAR VALUE??");
Run Code Online (Sandbox Code Playgroud)
如果可能的话,可以在通过"时间量"时使用整数值,即
int letterAmount = 3;
你可以使用正则表达式来做到这一点.按照你的例子:
word.matches(".*(z.*){3}.*")
Run Code Online (Sandbox Code Playgroud)
如果你的字符串有3个z,它返回true.
计算单字符匹配的一种有点昂贵和迂回的方法如下:
String s = "pizzaz";
int numMatches = s.length() - s.replaceAll("z", "").length();
Run Code Online (Sandbox Code Playgroud)
当"z"从原始字符串的长度中减去删除了所有s 的字符串的长度时,最终z得到原始字符串中的s 数.
| 归档时间: |
|
| 查看次数: |
976 次 |
| 最近记录: |