如何在TIBCO软件中实现印度卢比的印度逗号系统格式
首先明确印度计数系统的格式化规则:最后三位为一个分隔段,高位剩余部分每两位为一个分隔段,和通用的每三位千分位分隔逻辑不同,你可以根据开发场景选择对应实现方案:
不同场景实现方案
前端(JavaScript)实现
直接调用浏览器原生的Intl.NumberFormatAPI,指定印度地区locale即可:
// 仅数字格式化 const num = 1111111 console.log(new Intl.NumberFormat('en-IN').format(num)) // 输出:11,11,111 // 带卢比货币符号格式化 console.log(new Intl.NumberFormat('en-IN', { style: 'currency', currency: 'INR' }).format(num)) // 输出:₹11,11,111.00
Python实现
用第三方babel库(推荐,适配性更强)
from babel.numbers import format_number print(format_number(1111111, locale='en_IN')) # 输出:11,11,111
原生正则实现(无需额外依赖)
import re def format_indian_num(num): return re.sub(r'(\d)(?=(\d{2})+\d{3}\b)', r'\1,', str(num)) print(format_indian_num(1111111)) # 输出:11,11,111
Java实现
import java.text.NumberFormat; import java.util.Locale; public class IndianNumberFormat { public static void main(String[] args) { NumberFormat format = NumberFormat.getNumberInstance(new Locale("en", "IN")); System.out.println(format.format(1111111)); // 输出:11,11,111 } }
Excel/电子表格实现
选中需要格式化的单元格,自定义单元格格式为:[>=10000000]##\,##\,##\,##0;[>=100000]##\,##\,##0;##,##0
保存后即可自动按印度计数规则显示数字。
内容的提问来源于stack exchange,提问作者Ruchi
相关产品推荐
相关产品推荐

