удаление лишнего слеша
Здравствуйте!
есть строка в которой может быть произвольное количество лишних слешей. код внизу удаляет только если там 2 слеша. в результате должен их череды оставаться только один. Спасибо newStr = oldStr.replace('//','/'); |
var oldStr='//dad/////dadasdasd/////////asdasdads/' var newStr = oldStr.replace(/\/{2,}/g,'/') alert(newStr) Гы |
Извините, невнимательно прочитал задание. |
Спасибо, первый вариант работает)!
|
а если это нужно сделать со строкой url, причем она может включать или не включать http
например 'http://site.ru//dad/////dadasdasd/////////asdasdads/' или 'site.ru//dad/////dadasdasd/////////asdasdads/' сделал так, если плохо пожалуйста сообщите как исправить ff = 'http://site.ru//dad/////dadasdasd/////////asdasdads/' ff2 = 'site.ru//dad/////dadasdasd/////////asdasdads/' if (ff2 .indexOf('http')!= -1) { { oldStr = ff2 .substr(7); } else { oldStr = ff2 .substr(0); } newStr = oldStr.split("//").join('/').split("//").join('/') ff2 = ff2 .replace(oldStr,newStr); } |
Цитата:
А как сделать тоже самое только не со слешами, а с пробелами? |
Цитата:
var ff = 'http://site.ru//dad/////dadasdasd/////////asdasdads/'; var ff2 = 'site.ru//dad/////dadasdasd/////////asdasdads/'; var ff3 = '//site.ru//dad/////dadasdasd/////////asdasdads/'; function RelacStr (oldStr) { oldStr = oldStr.replace(/^((?:http:)?\/\/)/g,'!!!$1!!!'); var newStr = oldStr.replace(/\/{2,}/g,'/').replace(/!!!(http:)?\/!!!/g,'$1//') return newStr; } alert(RelacStr (ff )) alert(RelacStr (ff2)) alert(RelacStr (ff3)) |
Цитата:
var oldStr=' dad dadasdasd asdasdads ' var newStr = oldStr.replace(/\s{2,}/g,' ') alert(newStr) |
Deff, Вы бы лучше кинули ему ссылку на статью с регами.
|
Цитата:
|
Часовой пояс GMT +3, время: 08:22. |