Delphi to achieve amount lowercase transformation into capital

xiaoxiao2021-03-06  41

Function NuMtochar (const n: real): string; // can be tripled to us, and can expand a range

Const cnum: array [0..9] of string = ('zero', '壹', '', '', '', 'Wu', 'Lu', '柒', '捌', '');

CUnit: array [0..14] of string = ('10,000', '仟', '', 'picking', 'billion', '仟', '', 'picking', '10,000', '仟 ',' ',' picking ',' yuan ',' angle ',' points';

VAR

i: integer;

Snum, STEMP: STRING;

Begin

Result: = '';

Snum: = format ('% 15d', [ROUND (N * 100)]);

For i: = 0 to 14 do

Begin

STEMP: = COPY (SNUM, I 1, 1);

If stemp = '' Then Continue

Else Result: = Result CNUM [STRTOINT (STEMP)] CUnit [i];

END;

/ / Remove extra zero

Result: = StringReplace (Result, 'Zero Bill', 'Bill', [RFREPLACEALL]);

Result: = StringReplace (Result, 'Zero Picking', 'Zero', [RFREPLACEALL]);

Result: = StringReplace (Result, 'Zero', 'Zero', [RFREPLACEALL]);

Result: = StringReplace (Result, 'zero ",' zero ', [RFREPLACEALL]);

Result: = StringReplace (Result, '万', '10,000 ", [RFREPLACEALL]);

Result: = StringReplace (Result, 'iodic', 'billion ", [RFREPLACEALL]);

Result: = StringReplace (Result, 'billion', 'billion ", [RFREPLACEALL]);

Result: = stringReplace (Result, 'zero zero', 'zero', [RFREPLACEALL]);

Result: = stringReplace (Result, 'zero ",' zero ', [RFREPLACEALL]);

Result: = StringReplace (Result, '万', '10,000 ", [RFREPLACEALL]);

Result: = StringReplace (Result, 'iodic', 'billion ", [RFREPLACEALL]);

Result: = StringReplace (Result, 'billion', 'billion ", [RFREPLACEALL]);

Result: = StringReplace (Result, 'Zero Bill', 'Bill', [RFREPLACEALL]);

IF POS ('zero ", result) = 0 Then Result: = StringReplace (Result,' zero angle ',' zero", [RFREPLACEAll])

Else Result: = StringReplace (Result, 'zero angle', 'whole', [RFREPLACEALL]);

Result: = StringReplace (Result, 'zero ",' ', [RFREPLACEALL]);

END;

转载请注明原文地址:https://www.9cbs.com/read-57614.html

New Post(0)