C#中怎样判断字符串中是否包含字符串(不区分大小写)


场景

在winform中连接mysql数据库并执行相应的sql,需要判断sql字符串中是否指定的字符串比如

删表的关键字drop database等,而且还得不区分大小写,即包含大写和小写的都不被允许。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

1、通过ToLower()将要比较的字符串全部转换为小写,然后进行比较

通过字符串的Contains方法判断字符串中是否包含另一个字符串。

sql.ToLower().Contains(arr.ToLower())

2、完整示例方法

        public static bool checkSql(string sql)
        {
            bool isRight = true;
            string[] notAllowKeyWords = { "drop", "drop database" , "drop table" , "truncate", "alter","rename" , "create" };
            for (int i = 0; i < notAllowKeyWords.Length; i++)
            {
                string arr = notAllowKeyWords[i];
                if (sql.ToLower().Contains(arr.ToLower())) {
                    isRight = false;
                }
            }
            return isRight;
        }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM