这个Javascript语句(正则表达式)是什么意思?

jus*_*bie 6 javascript regex

RegEx在这里测试什么?

function chksql(){    
  if (/^\s*(?:delete|drop|truncate|alter)/.test(v)) return false;    
}
Run Code Online (Sandbox Code Playgroud)

我只知道它与正则表达式混合在一起,但无法弄清楚它的含义.

mko*_*yak 5

它表示检查if v是一个字符串,以零个或多个空格字符开头,后跟deletedroptruncatealter

所以如果v" alter"这将返回false.

请参阅docs:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions

我应该补充说,在客户端检查这种情况是一个非常糟糕的主意.它将被规避.