我是 Dynamics 365 Business Central 和 AL 的新手。我需要从字符串中删除特殊字符(电子邮件地址、电话号码)。我试过DELCHR(String,'=','[')
了,但禁止使用更多字符。我知道我可以添加多个,但我不知道我是否都抓住了它们。任何人都可以帮助我以更有效的方式吗?高度赞赏帮助。
谢谢
我是 Dynamics 365 Business Central 和 AL 的新手。我需要从字符串中删除特殊字符(电子邮件地址、电话号码)。我试过DELCHR(String,'=','[')
了,但禁止使用更多字符。我知道我可以添加多个,但我不知道我是否都抓住了它们。任何人都可以帮助我以更有效的方式吗?高度赞赏帮助。
谢谢
您可以编写一个保留“好”字符的函数,例如:
local procedure DeleteSpecialChars(var yourText: Text)
var
AllowedChars: Text;
begin
AllowedChars := 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789';
exit(DelChr(yourText, '=', DELCHR(yourText, '=', AllowedChars)));
end;
我假设您为 BC V14 或更高版本开发。如果是这样,您可以使用 codeunit 47 StringConversionManagement方法RemoveNonAlphaNumericCharacters或 RemoveDecimalFromString。
对于电子邮件地址,您应该使用 codeunit 9520 Mail Management。它拥有一个验证电子邮件地址的功能(CheckValidEmailAddress)。