Tengo un número y necesito agregarle un decimal para formatearlo.¿Cómo puedo insertar un punto decimal antes de los últimos tres dígitos de un número?
El número está garantizado entre 1000 y 999999 (he cubierto las otras posibilidades de otras formas, esta es la que no entiendo). Tengo que poner un decimal antes de los 3 últimos dígitos, por ejemplo:
1000 -> 1.000
23513 -> 23.513
999999 -> 999.999
¿Cómo puedo hacer esto?
Las expresiones regulares son una herramienta versátil, pero no son la * única * herramienta. ¿Qué te hace estar tan seguro de que son la herramienta adecuada para formatear un número? –
advertencia grande con este. Usar una expresión regular puede llevar a comportamientos inesperados si manipulas los números en Perl. En mi máquina, si hago 'my $ num = 11745.041 - 11739.7; print $ num; ', emite:" 5.34099999999853 ". La aplicación de la expresión regular enumerada en la respuesta aceptada de Adam antes de la declaración de impresión cambia eso a "5.34099999999.853". Probablemente no sea lo que estás buscando. Usando '$ num = sprintf ('%. 3f', $ num);' como la respuesta de @draegtun, produce el esperado: "5.341". –