|
06.03.2010, 11:36
|
Интересующийся
|
|
Регистрация: 03.09.2009
Сообщений: 16
|
|
Вопрос по replace. Как заменить все точки в строке?
Надеюсь на помощь гуру.
Сам пока не очеь силен в яваскриптах. Все юзаю на примерах. Встала задача, нужно удалить все точки в строке из чисел и точек.
Дано: строка "1.258.235"
Нужно получить: "1258235"
пробовал делать так
s = "1.258.235"
s = s.replace(/./g,"");
почему то выдает пустую строку
Подозреваю, что точка в данном случае используется как регулярное выражение. а не как символ для поиска и замены.
Как сделать правильно?
|
|
06.03.2010, 12:10
|
|
Профессор
|
|
Регистрация: 05.06.2009
Сообщений: 1,703
|
|
Точка это спец-символ в регулярных выражениях который совпадает с любым символом. Поэтому строка и пустая. Точку нужно экранировать, чтобы она не считалась спец-символом.
alert("1.258.235".replace(/\./g, ""));
__________________
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
Самые главные в жизни вещи - не вещи! (было написано на одном гараже =)
|
|
06.03.2010, 12:17
|
Интересующийся
|
|
Регистрация: 03.09.2009
Сообщений: 16
|
|
Спасибо!
А вы не могли бы прокомментировать мое решение. Пока ждал ответа - экспериментировал и опытным путем пришел вот к этому:
alert("58.235".replace(/[.]/g, ""));
но подозреваю что это не совсем корректно.
|
|
06.03.2010, 12:32
|
|
⊞ Развернуть
|
|
Регистрация: 11.01.2010
Сообщений: 1,810
|
|
Внутри [] символ "." трактуется именно как точка, а не спец-символ. Аналогично и с другими знаками: +*?$^()
alert('текст +*?$^(). текст'.match(/[+*?$^(.)]/g));
|
|
06.03.2010, 15:00
|
|
Профессор
|
|
Регистрация: 05.06.2009
Сообщений: 1,703
|
|
Pluto,
Есть книга - Регулярные выражения. Дж. Фридл.
Для того чтобы в этой теме методом тыка разобраться вся жизнь уйдёт.
B@rmaley.e><e,
Почему мой скрипт нельзя "Запустить!"? Каким BB-кодом это делается?
__________________
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
Самые главные в жизни вещи - не вещи! (было написано на одном гараже =)
Последний раз редактировалось Tim, 06.03.2010 в 15:11.
|
|
06.03.2010, 15:07
|
|
Профессор
|
|
Регистрация: 15.12.2009
Сообщений: 742
|
|
[_js run]
[/js]
Tim, разве это не юзал ? "_" убрать
http://javascript.ru/formatting
__________________
Настоящий программист думает и осознает сам решение задачи, а не копирует другие мысли, не осознавая их (c)
Относись к человеку так же, как хотелось бы отношения к себе (с)
Все нужно там, где оно нужно, а все не нужно нигде (с) Gozar
B~Vladi: А кто такой JavaScript стрелок?! micscr: это тот, кто не jQuery танкист.
Программы становятся медленнее быстрее, чем компьютеры становятся быстрее (с) Никлаус Вирт
|
|
06.03.2010, 15:08
|
|
⊞ Развернуть
|
|
Регистрация: 11.01.2010
Сообщений: 1,810
|
|
Tim, [js run]code[/js]
|
|
06.03.2010, 15:13
|
|
Профессор
|
|
Регистрация: 05.06.2009
Сообщений: 1,703
|
|
PeaceCoder,
B@rmaley.e><e,
Спасибо, не знал. Помню, что тема о новой подсветке синтаксиса мелькала, но я не обратил на неё внимания.
__________________
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
Самые главные в жизни вещи - не вещи! (было написано на одном гараже =)
|
|
08.03.2010, 09:51
|
Интересующийся
|
|
Регистрация: 03.09.2009
Сообщений: 16
|
|
Всем спасибо за разъяснения
|
|
07.07.2011, 13:21
|
Интересующийся
|
|
Регистрация: 04.07.2011
Сообщений: 20
|
|
Ребят, подскажите пожалуйста, как заменить все "\" на "\\".
Попробовал следовать советам в этом топике - но не удается разобраться.
|
|
|
|