1
2
3
4
5
6
7
8
9
10
11
12
| PUBLIC regex AS NEW RegExp PUBLIC Request AS STRING
IF UCase(Request) MATCH "YEAR" THEN Request = regex.Replace(Request, "YEAR *\\(([()'. a-zA-Z0-9_-]+)\\)", "strftime('%Y',&1) ", regex.Caseless) IF UCase(Request) MATCH "MONTH" THEN Request = regex.Replace(Request, "MONTH *\\(([()'. a-zA-Z0-9_-]+)\\)", "strftime('%m',&1) ", regex.Caseless) IF UCase(Request) MATCH "DAY" THEN Request = regex.Replace(Request, "DAY *\\(([()'. a-zA-Z0-9_-]+)\\)", "strftime('%d',&1) ", regex.Caseless) IF UCase(Request) MATCH "NOW" THEN Request = regex.Replace(Request, "NOW *\\(\\)", "strftime('%Y-%m-%d','now') ", regex.Caseless) IF UCase(Request) MATCH "CONCAT" THEN Request = regex.Replace(Request, "CONCAT\\(([()'. a-zA-Z0-9_éèàêâù%-]+ )*,* ([()'. a-zA-Z0-9_éèàêâù%-]+)\\)"egex.Caseless) IF UCase(request) MATCH "LEFT" THEN Request = regex.Replace(Request, "left\\(([().' a-zA-Z0-9_-]+) *, *([0-9-]+)\\)", "substr(&1,0,&2) ", regex.Caseless) IF UCase(request) MATCH "RIGHT" THEN Request = regex.Replace(Request, "right\\(([()'. a-zA-Z0-9_-]+) *, *([0-9-]+)\\)", "substr(&1,-&2) ", regex.Caseless) IF UCase(request) MATCH "MID" THEN Request = regex.Replace(Request, "mid\\(([().' a-zA-Z0-9_-]+) *, *([0-9-]+) *, *([0-9-]+)\\)", "substr(&1,&2,&3) ", regex.Caseless) IF UCase(Request) MATCH "ISNULL" THEN request = regex.Replace(Request, "isnull\\(([()' .a-zA-Z0-9_-]+)\\)", "&1 IS NULL", regex.Caseless)
|