java - 如何在替换方法java中忽略大小写

标签 java bukkit

好吧,所以我试图检查并查看一个字符串是否存在,但我不知道它会出现什么情况,那么我将如何在我的方法中使用它?

这是我的代码

    if (!p.hasPermission("core.chat.curse")){
    String message = e.getMessage().toString().toLowerCase().replace(" ", "");
    List<String> cursewords = manager.getCurseFile().getStringList("cursewords");

    for (String badword : cursewords){
        badword = badword.toString().toLowerCase();
    if (message.contains(badword)){
        String crossout = "";

        for (int x = 0; x < badword.length(); x++){
            crossout += "*";

        }
        e.setMessage(e.getMessage().replace(badword, crossout)); //I need to 
                    //replace Ignore Case Here
        }
    }
}

.replace不接受正则表达式,所以我不能使用它!

我该怎么做,因为玩家在任何情况下都可以输入单词?

最佳答案

您可能希望使用不区分大小写的替换正则表达式,如下所示:

if (message.contains("(?i)"+badword))

关于java - 如何在替换方法java中忽略大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22572214/

相关文章:

java - 为什么从 "empty"main 调用方法时不执行打印语句

java - 获取不带方括号的字符串

java - 对象序列化不起作用

java - MySQL 和 SQLite 类

java - Bukkit setItemStackName 不起作用

java - Bukkit - 无法启动 runTaskTimerAsynchronously();

Java/Bukkit - 检查玩家是否撞到了墙上

java - java 方法如何接受扩展泛型类型的参数

java - Java 中的数组求和与平均值

java - 为什么我的 BigDecimal 计算不起作用?