这就是问题所在:给定一个字符串,计算以“y”或“z”结尾的单词的数量——因此“重”中的“y”和“fez”中的'z”都会计数,但“黄色”中的‘y’不会计数(不区分大小写)。如果一个单词后面没有一个字母,我们会说一个y或z在单词的末尾。(注意:Character.islet(char)测试char是否为字母。)
countYZ("fez day") → 2
countYZ("day fez") → 2
countYZ("day fyyyz") → 2
这是我的代码:
public int countYZ(String str) {
int count = 0;
for (int i=0; i<str.length(); i++){
if (Character.isLetter(i) && (Character.isLetter(i+1)==false || i+1==str.length()) && (Character.toLowerCase(str.charAt(i))=='y' || Character.toLowerCase(str.charAt(i))=='z')){
count++;
}
}
return count;
}
我知道这很混乱,但我只是想弄清楚为什么现在不行。每次运行都返回“0”。在if语句中,我检查:我是一封信吗?i 1是字母还是字符串的结尾?最后,如果我是“y”或“z”。感谢您的帮助!
尝试此修复程序
for (int i = 0; i < str.length(); i++) {
if ((Character.toLowerCase(str.charAt(i)) == 'y' || Character
.toLowerCase(str.charAt(i)) == 'z')
&& i == str.length() - 1
|| !Character.isLetter(str.charAt(i + 1))) {
count++;
}
}
使用拆分()
和结束与()
public static int countYZ(String str) {
int count = 0;
String temp[] = str.split(" ");
for (int i = 0; i < temp.length; i++) {
if (temp[i].trim().endsWith("y") || temp[i].trim().endsWith("z"))
count++;
}
return count;
}
输出:根据需要为您的所有案例
countYZ("fez day") → 2
countYZ("day fez") → 2
countYZ("day fyyyz") → 2
您可以使用正则表达式:
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public int countYZ(String str) {
int count = 0;
Pattern regex = Pattern.compile("[yz](?!\\p{L})", Pattern.CASE_INSENSITIVE);
Matcher regexMatcher = regex.matcher(str);
while (regexMatcher.find()) {
count++;
}
return count;
}
说明:
[yz] # Match the letter y or z
(?!\p{L}) # Assert that no letter follows after that
给定一个字符串,计算以或结尾的字数——所以“重”中的和“fez”中的计数,但不是“黄色”中的(不区分大小写)。如果单词后面没有字母,我们会说或在单词的末尾。(注意:测试char是否是字母。) 例如, 但我在这些案例中失败了: smb能看看我的代码有什么问题吗?提前感谢!
在IntelliJ中,我们可以使用Alt Shift Insert在每行的同一位置进行多行编辑。当每行的长度不同时,我们可以在每行的末尾进行多行编辑吗?使用场景是在每行末尾编辑分号。 谢谢。
问题内容: 我有一个文本区域,其中包含一些文本,我想再次向其中添加一些行(第一行+我要添加的其他行),但是它不起作用。 我现在的操作方式将擦除旧文本并仅显示新行。 问题答案: 代替使用,使用。 将给定的文本追加到文档末尾。如果模型为null或字符串为null或为空,则不执行任何操作。 这会将文字添加到您的末尾。 另一个选择是使用来从中获取文本,然后操作String(添加或删除或更改String),
问题内容: 我需要删除单词的第一个字母并将其移到末尾,例如: 到目前为止,我已经尝试过了: 但是,我应该如何将第一个字母移到末尾? 问题答案: 您可以使用:
问题内容: 我需要帮助对字符串中单词的实例进行排序和计数。 可以说我有一个单词集合: 快乐美丽快乐线梨杜松子酒快乐线岩石快乐线梨 我如何使用php计算字符串中每个单词的每个实例并在循环中输出它: 这样上面的循环将输出: 有4个快乐实例。 有3行实例。 杜松子酒有2个实例。 问题答案: 使用的组合和: 给 将在品牌函数返回的所有找到的单词的数组。 要对条目进行排序,请使用(保留键):
我试图找到唯一的单词,以及它们重复了多少次。 尝试用python编写相同的代码。 输入数据集: 输出数据集: