package stringUtils import ( "regexp" "strings" ) func MatchString(expect string, actual string, langType string) bool { expect = strings.TrimSpace(expect) actual = strings.TrimSpace(actual) expect = strings.Replace(expect, "%s", `.+?`, -1) // 字符串 expect = strings.Replace(expect, "%i", `[+\-]?[0-9]+`, -1) // 十进制数字,可有符号 expect = strings.Replace(expect, "%d", `[0-9]+`, -1) // 十进制数字,无符号 expect = strings.Replace(expect, "%x", `[0-9a-fA-F]+`, -1) // 十六进制数字 expect = strings.Replace(expect, "%f", `[+\-]?\.?[0-9]+\.?[0-9]*(E-?[0-9]+)?`, -1) // 十进制浮点数 expect = strings.Replace(expect, "%c", ".", -1) // 单个字符 pass, _ := regexp.MatchString(expect, actual) return pass }