今天我不得不修改一项古老的制度,做在 delphi 法生成文件包含一些信息. Nestas informações há elementos que se utilizam de caracteres não Alpha-numéricos como “;:”; e “;/”; 不料,令我吃惊的是,我有义务将其删除.
Procurei por uma função que substituísse caracteres como “;Ç”; para “;C”; 才发现去除函数.
然后,我创建了我的下方.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
{ Substitui caracteres especiais por equivalentes ASCII } Function ReplaceNonAscii(const s: String) : String; var i, pos: Integer; const undesiredchars : String = '/ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÜÚÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ'; const replaces : String = ' AAAAAAACEEEEIIIIDNOOOOOxOUUUbBaaaaaaaceeeeiiiionooooo ouuuby'; Begin SetLength(Result, Length(s)); for i := 1 to Length(s) do begin pos := ord(s[i]); if (s[i] in [#32, #48..#57, #65..#90, #97..#122]) then Result[i] := s[i] else begin pos := AnsiPos(s[i], undesiredchars); Result[i] := replaces[pos + 1]; end; end; end; |