Я пытаюсь использовать этот код для замены пробелов на _, он работает для первого пробела в строке, но все остальные экземпляры пробелов остаются неизменными. Кто-нибудь знает почему?
function updateKey()
{
var key=$("#title").val();
key=key.replace(" ","_");
$("#url_key").val(key);
}
источник
/ /g
использования/\ /g
- оба работают в Javascript. Последний работает и в CoffeeScript..replace(/ /g,"_");
быстрее, чем.split(' ').join('_')
.попробуй это:
это сделает глобальный поиск / замену
замена JavaScript
источник
Чтобы ответить на вопрос Прасанны ниже:
Вы бы использовали ту же функцию
replace
с другим регулярным выражением. Выражение для пробела - это,\s
а выражение «1 или более раз» -+
это знак плюс, поэтому вы просто замените ответ Адама следующим:источник
Вы можете попробовать это
Он даже заменит несколько пробелов одним '-'.
источник
Я создал для этого тест производительности JS http://jsperf.com/split-and-join-vs-replace2
источник
Заменить пробелы подчеркиванием
Вывод: How_are_you
источник
Я знаю, что это старо, но я не видел, чтобы кто-нибудь упоминал о расширении строки
prototype
.источник
Просто используя
replace
:источник