Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 17.08.2012, 18:00
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от zebulun
вы экранируете запятую?
я - да так как не мастер регулярок, экранируются специальные символы, чтобы искались обычные
Ответить с цитированием
  #12 (permalink)  
Старый 17.08.2012, 18:03
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

zebulun,
Нарисуйте пару Входных строк, вместе с остаточной входящей(в выходную строку) инфой

И к ним выходные строки
Ответить с цитированием
  #13 (permalink)  
Старый 17.08.2012, 20:48
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от zebulun
и если вместо символов str надо подставить переменную var str='что-то', то как это описать в регулярке?
var text = 'bab ha , bab';
var str = 'bab';
var reg = '/,?\\s?' + str + '/g';
alert(text + '\n' + text.replace(eval(reg), 'ha'));

Только что у Deff-а научился (Задача по JavaScript) и правда здесь двойное экранирование делать нужно
Ответить с цитированием
  #14 (permalink)  
Старый 17.08.2012, 21:10
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

bes,
Не бери сильно дурной пример, хотя он иногда спасает
Воть классика http://javascript.ru/basic/regular-e...n#obekt-regexp

var reg = new RegExp("a" + str + "15", "i")

Последний раз редактировалось Deff, 17.08.2012 в 21:14.
Ответить с цитированием
  #15 (permalink)  
Старый 17.08.2012, 21:13
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

ну другого способа использовать переменную в регулярном выражении пока никто не предложил, а значит твой пока лучший
Ответить с цитированием
  #16 (permalink)  
Старый 17.08.2012, 21:26
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

bes,
Я ж привёл пример(пост 14)
Полный вариант
var str="Чё то там....."
var pattern = "1."+str+"Да";

var regexp = new RegExp( pattern, "ig")

var Out="1,Чё то там.....Да OЙ - Вру".replace(regexp,"Воть:::");

alert(Out)

Ксать, если есть вопросительные знаки в переменной(засовываемой в pattern) их нужно всё равно экранировать типо

str=str.replace(/\?/g,"\\?");

Последний раз редактировалось Deff, 17.08.2012 в 21:32.
Ответить с цитированием
  #17 (permalink)  
Старый 17.08.2012, 22:15
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от Deff
bes,
Я ж привёл пример(пост 14)
чуть раньше прочитал, чем появилось исправление
всё понял, два способа: обычный в RexExp и дополнительно eval для / /
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск в строке другой подстроки средствами JS YAN Общие вопросы Javascript 13 23.07.2013 09:41
Поиск в тексте javascript jQuery 3 31.05.2011 11:40
Поиск вхождения подстроки в массиве строк. FINoM Общие вопросы Javascript 8 27.02.2011 11:53
поиск подстроки в адресе по месту расположения amidamaru3000 Opera, Safari и др. 5 20.01.2011 17:11
Поиск в массиве через JavaScript Noran Общие вопросы Javascript 0 10.08.2008 17:31