Regex.Replace无法按预期使用Regexoptions.IgnoreCase

 第一偶像 发布于 2023-02-06 05:15

如果我有几个字符串:

str = "This is a cool string (orch. details here): 2. Denied."
str2 = " (Orch. details here)" <--notice the capital letter

然后我做这行代码试图清除那部分:

str3 = Regex.Replace(str, str2, "", RegexOptions.IgnoreCase);

str3最终完全像str执行前一样.我怀疑它是不是"看到"其他人物,如周期,因为当我做这与只是简单的字母strstr2那么它将取代它就好了.

是什么赋予了?!:)

感谢您的任何见解!

1 个回答
  • parens和period都有正则表达式的含义.因此,它不是试图字面上匹配的内容,str2而是一个由定义的正则表达式str2.如果你想要它按字面意思匹配你需要转义字符串

    str2 = Regex.Escape(str2);
    

    2023-02-06 05:40 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有