#javascript
Вопрос:
У меня есть строка, и я хочу, чтобы группы чисел внутри были перевернуты, например, «это номер 123456, а реверс 654321» было изменено на «это номер 654321, а реверс 123456» . как я могу этого достичь?
Ответ №1:
Пока я искал в сети , я, наконец, нашел это решение:
function reverseNumberInString(str){
let numbers = str.match(/d /g) || [];
for(let i = 0 ; i < numbers.length ; i ){
let x = numbers[i].toString().split("").reverse().join("");
let s = str
str = s.slice(0,str.search(numbers[i])) x s.slice(str.search(numbers[i]) numbers[i].length)
}
return str
}
Может Быть Интересно:
Вся проблема началась с термопринтера pos. Мне пришлось отправить ему строку шестнадцатеричных кодов для печати , но на моем языке (персидский/фарси) он печатался бы в обратном порядке , поэтому мне пришлось перевернуть шестнадцатеричную строку. но тогда числа были бы обратными (и, конечно, английские слова!!), поэтому я поменял цифры (а для английских букв просто поменял str.match(/d /g)
на str.match(/w /g)
) в сторону обратной строки!
Обновленный:
Я также обнаружил, что у десятичного числа тоже есть проблемы. поэтому я изменил часть регулярного выражения на str.match(/[a-zA-Z0-9.،,/] /g)