package utils import ( "fmt" "os" "regexp" "strings" ) // 切分;分号前后,分为俩个字符串 func SplitSemicolon(sql string) (string, string) { // 找到第一个分号的位置 semicolonIndex := strings.Index(sql, ";") if semicolonIndex != -1 { // 切分分号前的语句 front := sql[:semicolonIndex+1] rear := sql[semicolonIndex+1:] return front, rear } else { fmt.Println("未找到分号。") return "", "" } } // 检查字符串中是否包含指定的关键字 func ContainsKeyword(input string, keyword string) bool { return strings.Contains(input, keyword) } // 是否插入为大对象(需要更改位置) func IsInsertBlob(input string) int { re := regexp.MustCompile(`values\(([^)]*)\)`) match := re.FindStringSubmatch(input) if len(match) > 1 { return strings.Count(match[1], "?") } return 0 } // 检测文件夹是否存在 func CheckFolder(folderPath string) bool { _, err := os.Stat(folderPath) return !os.IsNotExist(err) } // 创建文件夹 func CreateFolder(folderPath string) error { err := os.MkdirAll(folderPath, os.ModePerm) if err != nil { return err } return nil }