Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как удалить подстроку? Работа со String 
:(
    Опции темы
sharq
Дата 9.11.2005, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Perl Liker
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 13.12.2004
Где: Ростов-на-Дону

Репутация: нет
Всего: 28



Работаю с объектом String. Как мне удалить подстроку из строки, причем подстрока содержиться в переменной, передается в функцию.

Код

var MyStr = 'test string';
function delete(name) { // name здесь это строка, например, 'test'
 MyStr.replace(/name/, ''); 
}


Так не работает, т.к. рег.выр. понимает это как строку, а не как переменную.
Как быть? Может есть метод какоу-нибудь?


--------------------
[color=gray]There's More Than One Way To Do It[/color]
PM MAIL WWW ICQ Skype   Вверх
Zeroglif
Дата 9.11.2005, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 644
Регистрация: 22.9.2005

Репутация: 28
Всего: 66



Можно так:
Код

var s='test string';//оригинальная строка
var n='test';//то, что нужно удалить
s=s.replace(eval('/'+n+'/'),'');


Или так:
Код

var s='test string';
var n='test';
s=s.replace(new RegExp(n),'');

PM MAIL WWW   Вверх
Sardar
Дата 9.11.2005, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Создавать динамический лучше чем eval, хотя на современных машинах разницу почувстовать нельзя smile

Пользуйся прототипами, будет удобней:

Код

String.prototype.remove=function(str) {
  return this.replace(new RegExp(String(str)),'');
}

alert('test string'.remove('test'));



--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
sharq
Дата 11.11.2005, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Perl Liker
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 13.12.2004
Где: Ростов-на-Дону

Репутация: нет
Всего: 28



Zeroglif спасибо, выручил.

Sardar буду иметь в виду. smile

smile



--------------------
[color=gray]There's More Than One Way To Do It[/color]
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0974 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.