I tried doing the following regular expression function:
uses System.RegularExpressions;
...
function ValidateEmail(Email: string): Boolean;
begin
const EmailPattern = '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$';
Result := TRegEx.IsMatch(Email, EmailPattern);
end;
That works in VCL and FMX, but not in TMS WEB Core. It can't find the System.RegularExpressions
unit:
[Error] can't find unit "System.RegularExpressions"
How can I do regular expressions using Delphi in TMS WEB Core?
As of v1.3.0.0 of TMS WEB Core, you're able to use regular expressions in TMS WEB Core the same way as in VCL/FMX, but from the WEBLib.RegularExpressions
unit instead of System.RegularExpressions
.
So I can do the following and it works:
uses WEBLib.RegularExpressions;
...
function ValidateEmail(Email: string): Boolean;
const
EmailPattern = '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$';
begin
Result := TRegEx.IsMatch(Email, EmailPattern);
end;
If you're using an older version of TMS WEB Core, then you can also do regular expressions using JavaScript through the ASM
code block in Delphi.
Here's an example using ASM
code block:
function ValidateEmail(Email: string): Boolean;
const
EmailPattern = '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$';
begin
{$IFDEF PAS2JS}
asm
Result = (new RegExp(EmailPattern)).test(Email);
end;
{$ENDIF}
end;