Java 在这种特殊情况下,如何消除区分大小写的问题?
关于此代码,我想请您提供帮助。我正在尝试对特定的单词进行编码,例如“Microsoft”等(随机的,只是为了学习这项技术)。我什么事都做得很成功,但要让这种寻找单词的方式变得毫无意义。代码如下:Java 在这种特殊情况下,如何消除区分大小写的问题?,java,string,text,case,stringbuilder,Java,String,Text,Case,Stringbuilder,关于此代码,我想请您提供帮助。我正在尝试对特定的单词进行编码,例如“Microsoft”等(随机的,只是为了学习这项技术)。我什么事都做得很成功,但要让这种寻找单词的方式变得毫无意义。代码如下: public class BannedWords { public static String returnStars(int length){ String stars = ""; String addStar = "*"; for (int i = 1; i<=len
public class BannedWords {
public static String returnStars(int length){
String stars = "";
String addStar = "*";
for (int i = 1; i<=length; i++){
stars += addStar;
}
return stars;
}
public static void main(String[] args) {
String textString = "Microsoft announced its next generation Java compiler today."
+ " It uses advanced parser and special optimizer for the Microsoft JVM.";
StringBuilder text = new StringBuilder(textString);
String bannedWords = "Java, JVM, Microsoft";
String [] bWordsArr = bannedWords.split("[, ]+");
for(int i = 0; i<bWordsArr.length; i++){
int index = textString.indexOf(bWordsArr[i]);
while(index != -1){
text = text.replace(index, index+bWordsArr[i].length(), returnStars(bWordsArr[i].length()));
index = textString.indexOf(bWordsArr[i], index +1);
}
}
System.out.println(text.toString());
}
}
公共类横幅词{
公共静态字符串returnStars(整数长度){
弦星=”;
字符串addStar=“*”;
对于(int i=1;i当使用indexOf()
时,toLowerCase()
会将选中的文本转换为小写。然后,您必须将搜索词放在小写形式。
String text = "Java is a good programming language.";
int index = text.toLowerCase().indexOf("java");
您也可以使用toUpperCase()
,只需将搜索词大写。实际上,您应该使用equalsIgnoreCase。这是比较字符串的正确方法,不考虑大小写。而且您不必将原始字符串修改为大写或小写来执行检查。我希望这有帮助:)
您对不起作用的toUpperCase()
和toLowerCase()
做了什么
可能有用。@LieRyan的可能重复它不是重复的,因为我只知道如何处理一个必须处理的变量。但这里我有三个变量,所以在这种情况下,情况不同,因此我无法处理它…Java中的循环有什么问题吗?谢谢你的回答。你好r这对我的情况没有帮助,因为我没有考虑它们,我只需要抑制对大小写的敏感性。无论如何,谢谢,这可能会对今后有所帮助。
yourString.equalsIgnoreCase(anotherString)