Source code

Revision control

Copy as Markdown

Other Tools

<!DOCTYPE html>
<!-- Extended range implementation tests (algorithm step 2: split into 4-digit groups) -->
<!-- Test second group marker (萬) - ten-thousands group -->
<div>&#x58f1;&#x842c;</div>
<div>&#x5f10;&#x842c;</div>
<div>&#x4f0d;&#x842c;</div>
<div>&#x4e5d;&#x842c;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;</div>
<!-- Test complex patterns within ten-thousands group (algorithm step 4: digit markers) -->
<div>&#x58f1;&#x842c;&#x5f10;&#x9621;&#x53c2;&#x767e;&#x56db;&#x62fe;&#x4f0d;</div>
<div>&#x58f1;&#x842c;&#x58f1;</div>
<div>&#x58f1;&#x842c;&#x58f1;&#x62fe;</div>
<div>&#x58f1;&#x842c;&#x58f1;&#x767e;</div>
<div>&#x58f1;&#x842c;&#x58f1;&#x9621;</div>
<!-- Test third group marker (億) - hundred-millions group -->
<div>&#x58f1;&#x5104;</div>
<div>&#x5f10;&#x5104;</div>
<div>&#x4f0d;&#x5104;</div>
<div>&#x4e5d;&#x5104;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x842c;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;</div>
<!-- Test complex patterns within hundred-millions group (algorithm step 6: zero dropping) -->
<div>&#x58f1;&#x5104;&#x5f10;&#x9621;&#x53c2;&#x767e;&#x56db;&#x62fe;&#x4f0d;&#x842c;&#x516d;&#x9621;&#x4e03;&#x767e;&#x516b;&#x62fe;&#x4e5d;</div>
<div>&#x58f1;&#x5104;&#x58f1;</div>
<div>&#x58f1;&#x5104;&#x58f1;&#x842c;</div>
<div>&#x58f1;&#x5104;&#x58f1;&#x62fe;&#x842c;</div>
<div>&#x58f1;&#x5104;&#x58f1;&#x767e;&#x842c;</div>
<div>&#x58f1;&#x5104;&#x58f1;&#x9621;&#x842c;</div>
<!-- Test fourth group marker (兆) - trillions group -->
<div>&#x58f1;&#x5146;</div>
<div>&#x5f10;&#x5146;</div>
<div>&#x4f0d;&#x5146;</div>
<div>&#x4e5d;&#x5146;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x5104;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x842C;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;</div>
<!-- Test extended ranges (algorithm step 3: group markers up to 10^16) -->
<!-- Test 10^13 range (ten-trillions) -->
<div>&#x58f1;&#x62fe;&#x5146;</div>
<div>&#x4f0d;&#x62fe;&#x5146;</div>
<div>&#x4e5d;&#x62fe;&#x4e5d;&#x5146;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x5104;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x842c;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;</div>
<!-- Test 10^15 range (hundred-trillions) -->
<div>&#x58f1;&#x767e;&#x5146;</div>
<div>&#x4f0d;&#x767e;&#x5146;</div>
<div>&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x5146;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x5104;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x842c;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;</div>
<!-- Test complex patterns in trillions group (step 5: drop ones, step 6: drop zeros) -->
<div>&#x58f1;&#x5146;&#x5f10;&#x9621;&#x53c2;&#x767e;&#x56db;&#x62Fe;&#x4f0d;&#x5104;&#x516d;&#x9621;&#x4e03;&#x767E;&#x516b;&#x62FE;&#x4e5d;&#x842c;&#x58f1;&#x767e;&#x5f10;&#x62fe;&#x53c2;</div>
<div>&#x58f1;&#x5146;&#x58f1;</div>
<div>&#x58f1;&#x5146;&#x58f1;&#x842c;</div>
<div>&#x58f1;&#x5146;&#x58f1;&#x767e;&#x842C;</div>
<div>&#x58f1;&#x5146;&#x58f1;&#x5104;</div>
<div>&#x58f1;&#x5146;&#x58f1;&#x767e;&#x5104;</div>
<div>&#x58f1;&#x5146;&#x58f1;&#x9621;&#x5104;</div>
<!-- Test interaction between multiple groups -->
<div>&#x58f1;&#x5146;&#x58f1;&#x62FE;&#x5104;&#x58f1;&#x767e;&#x842c;&#x58f1;&#x9621;&#x58f1;</div>
<div>&#x58f1;&#x5146;&#x58f1;&#x767e;&#x58f1;&#x5104;&#x58f1;&#x767e;&#x58f1;&#x842c;&#x58f1;&#x767e;&#x58f1;</div>
<div>&#x58f1;&#x5146;&#x58f1;&#x5104;&#x58f1;&#x842c;&#x58f1;</div>
<div>&#x4f0d;&#x5146;&#x4f0d;&#x62fe;&#x5104;&#x4f0d;&#x767e;&#x842c;&#x4f0d;&#x9621;&#x4f0d;</div>
<!-- Test zero dropping behavior across different groups -->
<div>&#x58f1;&#x5146;</div>
<div>&#x58F1;&#x62FE;&#x5104;</div>
<div>&#x58f1;&#x767e;&#x842c;</div>
<div>&#x58f1;&#x9621;</div>
<div>&#x58f1;&#x62fe;&#x5146;</div>
<div>&#x58f1;&#x767e;&#x5146;</div>
<!-- Test boundary values at the edge of range (-10^16+1 to 10^16-1) -->
<div>&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x5146;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x5104;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x842c;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;</div>
<div>&#x58f1;&#x9621;&#x5146;</div>
<!-- Test out-of-range values (should fallback to cjk-decimal) -->
<div>&#x4e00;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;&#x3007;</div>
<!-- Test negative numbers (algorithm step 8: negative sign handling) -->
<div>&#x30de;&#x30a4;&#x30ca;&#x30b9;&#x58f1;&#x842c;</div>
<div>&#x30de;&#x30a4;&#x30ca;&#x30b9;&#x58f1;&#x5104;</div>
<div>&#x30de;&#x30a4;&#x30ca;&#x30b9;&#x58f1;&#x5146;</div>
<div>&#x30de;&#x30a4;&#x30ca;&#x30b9;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x5146;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x5104;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;&#x842c;&#x4e5d;&#x9621;&#x4e5d;&#x767e;&#x4e5d;&#x62fe;&#x4e5d;</div>
<div>&#x30de;&#x30a4;&#x30ca;&#x30b9;&#x58f1;</div>