本帖最后由 志艺风云 于 2018-8-15 10:56 编辑
喔,不好意思,那个是对的,我试时用了小写字母,是我复制错了。但你这个没有分大小写,且在你的 正则助手 测试,只能试一行数据,所以正则是以为错的。
请教后面的 \h+\V+ 改成.*有什么差别啊
Local $Combo4Text[7]
$Combo4Text[0] = "" ;真
$Combo4Text[1] = "select * FROM 任意字符" ;真
$Combo4Text[2] = "sELECT 任意字符 FROM 任意字符" ;真
$Combo4Text[3] = "SELECT 任意字符 FROM 任意字符 into 任意字符" ;真
$Combo4Text[4] = "select 任意字符 INTO 任意字符 from 任意字符" ;假
$Combo4Text[5] = "INSERT INTO 任意字符" ;假
$Combo4Text[6] = "任意字符" ;假
For $i = 0 To 6
;If $Combo4Text[$i] = "" Or StringRegExp($Combo4Text[$i], "(?mi)^SELECT(?:(?!into.*?from).)+$") Then
If StringRegExp($Combo4Text[$i], "^$|^SELECT\h+\V+") Then
MsgBox(0, "测试[" & $i & "]应为:" & ($i < 4 ? "真" : "假"), "字符串:" & $Combo4Text[$i] & @CRLF & "结果为:真")
Else
MsgBox(0, "测试[" & $i & "]应为:" & ($i < 4 ? "真" : "假"), "字符串:" & $Combo4Text[$i] & @CRLF & "结果为:假")
EndIf
Next
|