有一个问题:
如何组合message.equalsIgnoreCase和message.startswith()?
即:
if (message.startsWith("!spoiler")) {
String name = sender;
if (!name.equalsIgnoreCase(ownerchannel)){
try {
String spoiler = message.split("!spoiler ")[1];
sendMessage(channel, "/timeout "+name+" 1");
if(englishmode == true){
sendMessage(channel, "Spoiler from "+name+" deleted. Click at 'message deleted' above to read it!");
}else{
sendMessage(channel, "Spoiler von "+name+" wurde zensiert. Wer diesen lesen möchte klickt einfach oben auf 'message deleted'.");
}
} catch (Exception e) {
}
}
}
在我上面的代码中,!剧透xyz会触发它但是!Spoiler xyz不会。我怎样才能将它与开始+ + ignorecase结合起来?
答案 0 :(得分:5)
您可以使用toLowerCase
if (message.toLowerCase().startsWith("!spoiler")) {
答案 1 :(得分:0)
将字符串的(副本)转换为全部小写,然后使用.startsWith()和它正在检查的小写版本。
答案 2 :(得分:0)
split
需要正则表达式。您必须使用正则表达式来处理您不关心的情况。
message.split("![Ss]poiler");
答案 3 :(得分:0)
使用以下代码组合两者:
if (message.startsWith("!spoiler") && !sender.equalsIgnoreCase(ownerchannel)) {
String name = sender;
try {
String spoiler = message.split("!spoiler ")[1];
sendMessage(channel, "/timeout "+name+" 1");
if(englishmode == true){
sendMessage(channel, "Spoiler from "+name+" deleted. Click at 'message deleted' above to read it!");
}else{
sendMessage(channel, "Spoiler von "+name+" wurde zensiert. Wer diesen lesen möchte klickt einfach oben auf 'message deleted'.");
}
} catch (Exception e) {
}
}