Можно ли найти конкретный символ в строке и изменить его позицию на предыдущий символ
например: допустим, есть строка: K Iù Mù
Я хочу получить такой результат: ùK ùI ùM
Привет, добро пожаловать в SO. Найдите время, чтобы прочитать тур и Как спросить. Оба связаны, когда вы нажимаете [Задать вопрос].
Вы просто хотите переключить символы с четной позиции на предыдущую нечетную позицию
Привет и добро пожаловать, на Stack Overflow обычно рекомендуется сначала попробовать и задать вопрос, как только вы застрянете. Можем ли мы увидеть код, который вы уже пробовали?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Да, конечно! Вы можете пройти по строке в цикле char по char, посмотреть на следующую позицию и, если это нужный char U, переключить позицию!
function switchChar(text, charToFind) {
//temp variable for building result
var result = "";
//loop over original string
for (var i = 0; i < text.length; i++) {
//chack not to jump out of array
if (i + 1 < text.length) {
//if next char is the char im looking for
if (text[i + 1] == charToFind) {
//write next char first
result += charToFind;
//then write original char
result += text[i];
//iterate i once more to jump over next char (I appended two chars in this single cycle)
i++;
//if it is not the char Im looking for
} else {
//write it down
result += text[i];
}
//I am at the end
} else {
//write the char
result += text[i];
}
}
return result;
}
console.info(switchChar('Kù Iù Mù', 'ù'))Фрагмент сделал @MaraBlack - я просто добавил исходные данные, чтобы убедиться, что он не просто сделал один.
Хотя это отличная попытка для чистого js, лично я бы выбрал регулярное выражение: var x = "Kù Iù Mù"; x = x.replace(/(.)ù/g, "ù$1"); console.info(x)
Когда-то я буду достаточно мудр, чтобы разобраться в древних руинах королевства Регекс, но сейчас не время ...
Да, это возможно.