Java 正则匹配sql

文章目录

  • 正则匹配sql表名称
    • insert into
    • update
  • 正则表达式什么时候要加^$

在线正则校验

正则匹配sql表名称

insert into

insert into PING_TABLE (CODE, NAME) VALUES('0', '待提交'),('1', '审核中'),('2', '审核通过'),('3', '已驳回');
regex -> insert\sinto\s(\w+)\s*\(?

Java 正则匹配sql_第1张图片

update

update STATE_WARNNINGSUBTYPE_TABLE set 
regex -> update\s(\w+)\s*(set)?

Java 正则匹配sql_第2张图片

正则表达式什么时候要加^$

加^$的话就代表把整个要匹配的字符串当成一个整体做一次匹配,
而不加则一个字符串可以匹配多次,代表这个字符串中有符合条件的
如"^abc$"只能匹配abc;"abc"不仅可以匹配abc,还可以匹配abcd

 public static boolean checkLength(String rule, String source) {
        if (rule.contains(",")) {
            String[] r = rule.split(",");
            return Pattern.matches(String.format("^[0-9]{%s}(\\.[0-9]{%s})?$", (Integer.parseInt(r[0]) - Integer.parseInt(r[1])), r[1]), source);
        }
        if (Pattern.compile("[\\u4e00-\\u9fa5]").matcher(source).find()) {
            return source.length() <= Integer.parseInt(rule);
        }
        return Pattern.matches(String.format("^[A-Za-z0-9]{%s}$", rule), source);
    }

你可能感兴趣的:(java,python,数据库)