Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Удалить длинные пробелы... (https://javascript.ru/forum/misc/28381-udalit-dlinnye-probely.html)

PsScitalec 17.05.2012 16:47

почему не работает сам не пойму

PsScitalec 17.05.2012 17:15

Сорри дабл пост

9xakep 17.05.2012 20:29

А тебе надо, что бы удаляло, только длинные пробелы?
alert('Привет, меня зовут  Вася Пупкин   !'.replace(/\s{2,}/,' '))

PsScitalec 18.05.2012 10:20

Нет я хочу удалить все, для того чтобы найти телефон вида
(xxx) xx xx xxx
xxx xx xx xxx
xxx xx xx xxx
xxx-xx-xx-xxx

Скобки, пробелы и тире я понимаю как удалить,а вот длинные пробелы нет

Kolyaj 18.05.2012 11:16

Что такое длинный пробел?

person 19.05.2012 06:07

Цитата:

Сообщение от Kolyaj
Что такое длинный пробел?

Судя по наличию в коде не разрывных пробелов, наверно он.
Лет несколько назад такую проблему решил копированием этого пробела в регулярку (сам пробел, а не код!!!), то есть два пробела, обычный и этот.
Ещё есть смутные воспоминания о вопросах типа "как искать символьные объекты" регуляркой.
PsScitalec, попробуй к гуглу по приставать, может чего нароешь.

observer 19.05.2012 22:34

Цитата:

Сообщение от Kolyaj (Сообщение 175150)
Что такое длинный пробел?

Возможно, человек имеет в виду символ \u2003, но он уже и так входит в состав \s

\s == [\t\n\v\f\r \u00a0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u 2028\u2029\u3000]

observer 19.05.2012 22:49

Цитата:

Сообщение от PsScitalec (Сообщение 174986)
почему не работает сам не пойму

Человек, либо вы покажите всем файл input.txt с выводом результата, либо идите к гадалке.

Аналогично:
var saveAllBlank = txt.split(/\s+/).join("");

9xakep 19.05.2012 23:49

var str = 'asdfasdfsd dsafasdfav rgsrev aergzv(123) 12 12 123idfkjasefkdf'
var str2 = 'WERFREGW5EHGWRST123 12 12 123ADWEFAERGSERVFSDFVGATRHSRA4E'
var str3 = 'dsgretgrstgsrtgs123-12-12-123EQR4WEGWTRS5TGSR5FG'
function get_number(s) {
    return s.match(/(\(\d{3}\)(\s\d{2}){2}\s\d{3})|(\d{3}(\s\d{2}){2}\s\d{3})|(\d{3}(-\d{2}){2}-\d{3})/)[0]
}
alert(get_number(str))
alert(get_number(str2))
alert(get_number(str3))


Часовой пояс GMT +3, время: 04:22.