Regex for only Select queries? -
i looking regex allows select queries strictly, no inserts, deletes, alters or of sort can allowed , query can have multiple lines..
i tried
var pattern="(^select)^((?!insert|delete|alter).)*$"; var pattern=^(?!insert|delete|alter|modify|add|create|drop|truncate|rename|update|rollback|commit|grant|revoke|savepoint)(.(?!insert|delete|alter|modify|add|create|drop|truncate|rename|update|rollback|commit|grant|revoke|savepoint))*$"; how make not match insert or keywords on multiple lines (in javascript).
it fails in
eg: select * insert which means should start "select" , cannot have insert anywhere in query doesn`t work.
there lot of problems idea, mentioned in comments. far how accomplish this:
/^select(?:(?!insert|delete|alter)[\s\s])*$/i this make sure select (case-insensitively) first word. used rest of expression exactly. threw * repetition non-capture group, , updated . [\s\s] (because . matches character except newline).
Comments
Post a Comment