Lakhs / Crores システムで数値を単語に変換する: 効率的なアプローチ
数値を単語に変換することは、プログラミング、特にプログラミングにおいて一般的なタスクです。財務または会計アプリケーション。既存のソリューションの多くには、複数の正規表現とループを含む複雑なコードが含まれていますが、この記事では、南アジアの番号付けシステムの特定の要件に合わせた簡略化されたアプローチを紹介します。
このシステムは、「10 万」と「10 億」の概念を利用しています。 " 大きな数を表す。 10 万は 100,000 を表し、10 億は 10,000,000 を表します。カンマが区切り文字として使用される西洋の番号付けシステムとは異なり、南アジアの番号付けシステムはスペースを使用します。
この変換を効率的に行うために、次のコード スニペットでは単一の正規表現を使用し、ループの必要性を排除しています。
<code class="javascript">const a = ['', 'one ', 'two ', 'three ', 'four ', 'five ', 'six ', 'seven ', 'eight ', 'nine ', 'ten ', 'eleven ', 'twelve ', 'thirteen ', 'fourteen ', 'fifteen ', 'sixteen ', 'seventeen ', 'eighteen ', 'nineteen ']; const b = ['', '', 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety']; function inWords (num) { if ((num = num.toString()).length > 9) return 'overflow'; n = ('000000000' + num).substr(-9).match(/^(\d{2})(\d{2})(\d{2})(\d{1})(\d{2})$/); if (!n) return; let str = ''; str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : ''; str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : ''; str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : ''; str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : ''; str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + ' ' + a[n[5][1]]) + 'only ' : ''; return str; } ```` This code combines pre-defined arrays 'a' and 'b' to form various numerical representations. By utilizing a regular expression, it captures the different sections of the number (e.g., crores, lakhs, thousands, hundreds, and ones) and generates the appropriate words. Importantly, this approach is much more concise than the earlier solution presented. To demonstrate the code's functionality, an HTML/JavaScript snippet can be used: </code>
document.getElementById('number').onkeyup = function () {
document.getElementById('words').innerHTML = inWords(document.getElementById('number').value);
};
以上がLakhs/Crores システムで数値を単語に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。