我尝试转换的值从输入XML像2222222.22 OT德国格式像2.222.222,22.下面是带有while函数的代码块
# Remove any existing dots as thousand separators and replace dot with comma as decimal separator
tag2val[tags[i]] = gensub(/\./, ",", "g", tag2val[tags[i]])
# Add dots as thousand separators if necessary
while (match(tag2val[tags[i]], /[0-9]{4}/)) {
tag2val[tags[i]] = substr(tag2val[tags[i]], 1, RSTART) "." substr(tag2val[tags[i]], RSTART+1)
}
字符串
当然,这个脚本需要工作,无论值是2.22或222.22或2222222.22任何帮助?
2条答案
按热度按时间b1payxdu1#
只需将您的区域设置为显示所需格式的数字的区域,例如:
字符串
请参阅https://stackoverflow.com/a/61911355/1745001了解其他可能的语言环境,以及如何在上述两种语言环境都不适合的情况下找到适合您的语言环境。
egmofgnx2#
一个“C风格”的解决方案,适用于任何Awk:
字符串
型
型