删除字符串中的多个特殊字符
Delete multiple special characters in string
我是 Dynamics 365 Business Central 和 AL 的新手。我需要从字符串中删除特殊字符(电子邮件地址、phone 数字)。我尝试了 DELCHR(String,'=','[')
,但禁止使用的字符更多。我知道我可以添加不止一个,但我不知道我是否抓住了它们。谁能以更有效的方式帮助我?非常感谢您的帮助。
谢谢
你可以编写一个函数来保留 'good' 个字符,例如:
local procedure DeleteSpecialChars(var yourText: Text)
var
AllowedChars: Text;
begin
AllowedChars := 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789';
exit(DelChr(yourText, '=', DELCHR(yourText, '=', AllowedChars)));
end;
我假设您是为 BC V14 或更高版本开发的。如果是这样,您可以使用代码单元 47 StringConversionManagement 方法 RemoveNonAlphaNumericCharacters 或 RemoveDecimalFromString.
对于电子邮件地址,您应该使用代码单元 9520 邮件管理。它具有验证电子邮件地址的功能 (CheckValidEmailAddress)。
我是 Dynamics 365 Business Central 和 AL 的新手。我需要从字符串中删除特殊字符(电子邮件地址、phone 数字)。我尝试了 DELCHR(String,'=','[')
,但禁止使用的字符更多。我知道我可以添加不止一个,但我不知道我是否抓住了它们。谁能以更有效的方式帮助我?非常感谢您的帮助。
谢谢
你可以编写一个函数来保留 'good' 个字符,例如:
local procedure DeleteSpecialChars(var yourText: Text)
var
AllowedChars: Text;
begin
AllowedChars := 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789';
exit(DelChr(yourText, '=', DELCHR(yourText, '=', AllowedChars)));
end;
我假设您是为 BC V14 或更高版本开发的。如果是这样,您可以使用代码单元 47 StringConversionManagement 方法 RemoveNonAlphaNumericCharacters 或 RemoveDecimalFromString.
对于电子邮件地址,您应该使用代码单元 9520 邮件管理。它具有验证电子邮件地址的功能 (CheckValidEmailAddress)。