OK. Вот код JavaScript, который будет генерировать нужный вам результат:
pad
- это рекурсивная функция, которая генерирует любые требуемые конечные нули.
function pad(num, diff) {
return diff > 0 ? pad(num, diff - 1) + 0 : num;
}
processString
делает основную часть работы. Обратите внимание, что этот код работает только на одноразрядные номера в соответствии с вашим вопросом. т.е. он не работал бы на 1.12.1
должным образом, например.
function processString(num) {
// remove any existing dots
var tmp = num.replace(/\.+/g, '');
// calculate the difference between the desired length of the string
// and the current string
var diff = 4 - tmp.length;
// generate a template
var tmpl = '<string>#{padded}</string>';
// if the diff is greater than zero return the padded string
// with the dots added back in otherwise return the original string
var padded = diff > 0 ? pad(tmp, diff).split('').join('.') : num;
return tmpl.replace('#{padded}', padded);
}
Тогда, конечно, вам нужно добавить текстовую к странице:
<textarea id="area"></textarea>
<button id="submit">Submit</button>
И некоторые дополнительные JavaScript, чтобы захватить текст добавлен и преобразовать его:
function processArea() {
var area = document.getElementById('area');
// split the text at each carriage return
var arr = area.value.split(/\n/);
// loop over each string and process it
for (var i = 0, l = arr.length; i < l; i++) {
arr[i] = processString(arr[i]);
}
// repopulate the text area with the output
area.value = arr.join('\r\n');
}
DEMO
Если, с другой стороны, вам необходимо учитывать номера с mul автовоза цифры, заменить вышеуказанные две функции с этим:
function pad(num) {
if (num.length < 4) {
num.push('0');
pad(num);
}
return num;
}
function processString(num) {
var tmp = num.split('.');
var diff = 4 - tmp.length;
var tmpl = '<string>#{padded}</string>';
var padded = diff > 0 ? pad(tmp).join('.') : num;
return tmpl.replace('#{padded}', padded);
}
DEMO
Что такое текущее решение? – geckon
Почему флаг python? Кажется, это не связано с python. – Nerkyator
Было бы неплохо предоставить небольшой пример. Его легче отлаживать и находить решение. Позже это решение может быть применено ко всей вашей проблеме. –