|
.match()
|
|
| akkolt | Отредактировал akkolt - Вторник, 20 Июля 2010, 05:59 Дата: 20 Июля 2010, 05:58 | Сообщение # 1 | ● ● ● ● ● 106 сообщений Статус: Offline | Можете написать проверку для re? известно, что в строке var он выглядит как или | | |
|
| cucYa | Отредактировал cucYa - Вторник, 20 Июля 2010, 06:54 Дата: 20 Июля 2010, 06:51 | Сообщение # 2 |  ● ● ● ● ● Совращенный мальчик.7317 сообщений Статус: Offline | | | |
|
| akkolt | Дата: 20 Июля 2010, 07:07 | Сообщение # 3 | ● ● ● ● ● 106 сообщений Статус: Offline | cucYa, не работает, в строке var может быть больше одной цифры вообще выглядит она приблизительно так: "цифра1,цифра2,цифра3..." нужно кстати учесть, что если в строке содержится только одна цифра, запятых не будет, т.е.: "цифра1" | | |
|
| cucYa | Дата: 20 Июля 2010, 07:11 | Сообщение # 4 |  ● ● ● ● ● Совращенный мальчик.7317 сообщений Статус: Offline | Нужно проверить на что? На то что там есть цифры или запятые? | | |
|
| akkolt | Дата: 20 Июля 2010, 07:15 | Сообщение # 5 | ● ● ● ● ● 106 сообщений Статус: Offline | cucYa, нет, на то, совпадает, ли re с одной из цифр в переменной в переменной цифр может быть сколько угодно, и выглядят они вот так: "цифра1,цифра2,цифра3...цифраN"Добавлено (20 Июль 2010, 07:15) --------------------------------------------- cucYa, испольовать .split() не хочу, слишком муторно. поэтому и спрашиваю | | |
|
| Task | Дата: 20 Июля 2010, 08:52 | Сообщение # 6 | ● ● ● ● ● 703 сообщения Статус: Offline | Code a='123, 1234, 4465, 5465'; //Числа, которые будем проверять. a=a.match('1234'); //Сюда подставляете свое число. alert((a==null)?'false':'true'); //Покажет true - если число есть в ряду, в противном случае false. | | |
|
| uWeb | Отредактировал uWeb - Вторник, 20 Июля 2010, 09:06 Дата: 20 Июля 2010, 09:06 | Сообщение # 7 | ● ● ● ● ● 1135 сообщений Статус: Offline | Зачем?Code alert('123, 1234, 4465, 5465'.match('4465') ? true : false); | | |
|
| Task | Дата: 20 Июля 2010, 09:08 | Сообщение # 8 | ● ● ● ● ● 703 сообщения Статус: Offline | uWeb, чтобы он лучше понял. | | |
|
| akkolt | Отредактировал akkolt - Вторник, 20 Июля 2010, 09:59 Дата: 20 Июля 2010, 09:44 | Сообщение # 9 | ● ● ● ● ● 106 сообщений Статус: Offline | Code a='123, 456, 789'; a=a.match('3'); в этом случае будет возвращаться true, так как цифра 3 присутствует в числе 123 из переменной a Добавлено (20 Июль 2010, 09:44) --------------------------------------------- поэтому я и спросил | | |
|
| Infamous | Дата: 20 Июля 2010, 09:50 | Сообщение # 10 |  ● ● ● ● ● 1670 сообщений Статус: Offline | | | |
|
| akkolt | Отредактировал akkolt - Вторник, 20 Июля 2010, 09:58 Дата: 20 Июля 2010, 09:57 | Сообщение # 11 | ● ● ● ● ● 106 сообщений Статус: Offline | да, и вопрос по ходу - как в литеральном формате заменить 123 на определенную переменную? | | |
|
| Task | Отредактировал Task - Вторник, 20 Июля 2010, 10:00 Дата: 20 Июля 2010, 09:59 | Сообщение # 12 | ● ● ● ● ● 703 сообщения Статус: Offline | Code a='123, 456, 789'; x='Переменная'; a=a.replace(/^123|,\s?123,|123$/, x); | | |
|
| akkolt | Отредактировал akkolt - Вторник, 20 Июля 2010, 10:07 Дата: 20 Июля 2010, 10:06 | Сообщение # 13 | ● ● ● ● ● 106 сообщений Статус: Offline | Task, я имел ввиду заменить не найденное число в строке a, а просто сделать к примеру вот так: Code /^переменная|,\s?переменная,|переменная$/ Дело в том, что раньше не приходилось встречаться с таким форматом текста | | |
|
| Task | Дата: 20 Июля 2010, 10:09 | Сообщение # 14 | ● ● ● ● ● 703 сообщения Статус: Offline | Code a=new RegExp('^'+x+'|,\\s?'+x+',|'+x+'$'); | | |
|
| akkolt | Дата: 20 Июля 2010, 10:12 | Сообщение # 15 | ● ● ● ● ● 106 сообщений Статус: Offline | Infamous, Task, большое спасибо, вопрос исчерпан =-) Infamous, Благодарен, не в первый раз уже помогаете | | |
|
| Task | Дата: 20 Июля 2010, 10:15 | Сообщение # 16 | ● ● ● ● ● 703 сообщения Статус: Offline | Code checkNumber=function(str, n){ //str - строка в которой проверяем, n - число, которое проверяем. var a=new RegExp('^'+n+'|,\\s?'+n+',|'+n+'$');alert((str.match(a))?true:false); } Code checkNumber('123, 456, 789', 123); //Пример вызова. | | |
|
| akkolt | Дата: 20 Июля 2010, 10:18 | Сообщение # 17 | ● ● ● ● ● 106 сообщений Статус: Offline | Task, ну да | | |
|
| Infamous | Дата: 20 Июля 2010, 10:29 | Сообщение # 18 |  ● ● ● ● ● 1670 сообщений Статус: Offline | (str.match(a))?true:false Лучше просто приводить к логическому типу, чем писать классический говнокод с true-false: | | |
|
| akkolt | Отредактировал akkolt - Пятница, 23 Июля 2010, 16:10 Дата: 23 Июля 2010, 15:18 | Сообщение # 19 | ● ● ● ● ● 106 сообщений Статус: Offline | Code new RegExp('^'+n+'|,\\s?'+n+',|,'+n+'$'); Если n = 1 Возвращает 1 в строке 21,2... Не возвращает ничего в строке ...,2,1 Добавлено (23 Июль 2010, 15:05) --------------------------------------------- Знаю, что не должно быть так Добавлено (23 Июль 2010, 15:05) --------------------------------------------- Ошибка была в коде, исправлено | | |
|