美文网首页
Android正则表达式忽略大小写不生效

Android正则表达式忽略大小写不生效

作者: 南窗云 | 来源:发表于2020-11-23 11:48 被阅读0次

问题

Android 本地过滤新增的敏感词 ,发现正则表达式不生效的问题。

下面的正则表达式可以用 在线正则测试工具 测试,无论大小写都会替换成给定的特殊字符

sb|rubbish|bitch|dead|asshole|bullshit|kill|stupid|fuck|sb|shit|fuck/ig
已忽略大小写

但是在Android项目中,结果是只识别了小写的。


只是识别了小写

解决

修改正则表达式,忽略大小写改为如下写法,即可正常使用

(?i)sb|rubbish|bitch|dead|asshole|bullshit|kill|stupid|fuck|sb|shit|fuck

附代码如下:

        val antiSpamRegex = "(?i)sb|rubbish|bitch|dead|asshole|bullshit|kill|stupid|fuck|sb|shit|fuck"
        val content = "sb Sb Fuck shit shiT shIt FUCK,fuck Shit shiT rubbish"
        val regexStr = Pattern.compile(antiSpamRegex).matcher(content).replaceAll("**")
        logError("regex : $regexStr")

输出结果如下:

regex : ** ** ** ** ** ** **,** ** ** **

相关文章

  • Android正则表达式忽略大小写不生效

    问题 Android 本地过滤新增的敏感词 ,发现正则表达式不生效的问题。 下面的正则表达式可以用 在线正则测试工...

  • Git修改文件名大小写后无法提交

    查看是否忽略大小写 true为忽略了大小写,false为为忽略大小写 设置默认不忽略大小写:git config ...

  • Android studio 忽略文件不生效

    网上说的先清除缓存,然后编辑忽略文件,然后提交。but,本人没有实验成功。 但是网上说的道理是对的,在服务器存在的...

  • Nginx 匹配规则

    无 :默认匹配,普通匹配 = :精确匹配 ~* :匹配正则表达式,不区分大小写 ~ :匹配正则表达式,区分大小写 ...

  • Android Studio使用常见问题

    设置大小写自动联想File->Settings...(Ctrl+Alt+s)忽略大小写设置.png Android...

  • 正则

    正则表达式 //匹配字母a,i表示忽略大小写,g表示全文检索var re =...

  • Nginx 转发匹配规则,后端程序员必备知识点

    一、正则表达式匹配 ~ 为区分大小写匹配 ~* 为不区分大小写匹配 !~ 和 !~* 分别为区分大小写不匹配及不区...

  • nginx(二):符号语句

    一.正则表达式匹配,其中: ~ 为区分大小写匹配 ~* 为不区分大小写匹配 !和!*分别为区分大小写不匹配及不区分...

  • Nginx配置文件nginx.conf详解

    一.正则表达式匹配,其中: ~ 为区分大小写匹配~* 为不区分大小写匹配!~ 和!~*分别为区分大小写不匹配及不区...

  • GREP 常用汇总

    grep 不区分大小写搜索grep 默认对大小写敏感, 使用 -i 参数, 忽略大小写

网友评论

      本文标题:Android正则表达式忽略大小写不生效

      本文链接:https://www.haomeiwen.com/subject/ejimiktx.html