Удалите все точки, кроме первой, из строки

Учитывая строку

'1.2.3.4.5'

, я хотел бы получить этот результат

'1.2345'

(Если в строке нет точек, строка должна будет возвращен без изменений.)

Я написал эту

function process( input ) {
    var index = input.indexOf( '.' );

    if ( index > -1 ) {
        input = input.substr( 0, index + 1 ) + 
                input.slice( index ).replace( /\./g, '' );
    }

    return input;
}

живую демонстрацию: http://jsfiddle.net/EDTNK/1/

Это работает, но я надеялся на более элегантное решение ...

16
задан Šime Vidas 15 November 2011 в 18:50
поделиться