1

我是 Dynamics 365 Business Central 和 AL 的新手。我需要从字符串中删除特殊字符(电子邮件地址、电话号码)。我试过DELCHR(String,'=','[')了,但禁止使用更多字符。我知道我可以添加多个,但我不知道我是否都抓住了它们。任何人都可以帮助我以更有效的方式吗?高度赞赏帮助。

谢谢

4

1 回答 1

0

您可以编写一个保留“好”字符的函数,例如:

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方法RemoveNonAlphaNumericCharactersRemoveDecimalFromString

对于电子邮件地址,您应该使用 codeunit 9520 Mail Management。它拥有一个验证电子邮件地址的功能(CheckValidEmailAddress)。

于 2020-07-29T09:33:58.433 回答