[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Подходит ли ссылка под шаблон
Страницы: 1, 2
N0ob
Вот регулряка:
var rgExp = /\/[a-z0-9]{3,}[[\/]?\?[[a-z0-9]{3,}\=[a-z0-9]{3,}]*[\&\&]]?$/ig;

По сути она должна подходить вот под эти три типа ссылок:
Цитата
/link
/link/?get=1
/link?get=1

Но не ищет. В чем ошибка?
N0ob
Help meeeeeeeeeeeeeeeeeeeee pls huh.gif
inpost
Квадратные скобки внутри квадратных? Может имелось ввиду круглые?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
N0ob
inpost а так разве нельзя?
inpost
квадратные скобки перечисляют допустимые символы. Как ты тут сделаешь вложенность? Можно А [ можно Б ] ? Тогда это будет [ab] , и без вложенности.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
N0ob
inpost значит я ошибся. Я думал, что квадратные скобки это что то на подобии круглых, только то, что внутри этих скобок не запоминается, как вкруглых
N0ob
Все. Наконец то сделал что то сам из регулярки. Вот:
var rgExp = /\/[a-z0-9]{3,}(\/)?(\?)?(([a-z0-9]{1,}\=[a-z0-9]{1,})*(\&\&)?)?$/ig;

Теперь вопрос. Как мне получить данные из скобок? В ПХП я знаю как, а во тв JS не имею понятия
N0ob
??????????
inpost
N0ob
http://javascript.ru/basic/regular-expression+

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
N0ob
inpost я не нашел там ничего подобного. Может и нашел, но не понял, что то, что мне нужно. Может "ткнете меня носом" в этот кусок статьи?
inpost
N0ob
Там всё есть, смотри внимательно.
user posted image

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
N0ob
В том то и дело, что он возвращает всего один элемент, и то, полностью строку, по которой я ищу:
Array
[
0 => '/messages?pm=1'
]
inpost
А пример кода попробовал, что они давали?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
N0ob
inpost там все правильно. Если нужен полностью мой код, то вот:
   
var print_r = function (obj, t) {

// define tab spacing
var tab = t || '';

// check if it's array
var isArr = Object.prototype.toString.call(obj) === '[object Array]';

// use {} for object, [] for array
var str = isArr ? ('Array\n' + tab + '[\n') : ('Object\n' + tab + '{\n');

// walk through it's properties
for (var prop in obj) {
if (obj.hasOwnProperty(prop)) {
var val1 = obj[prop];
var val2 = '';
var type = Object.prototype.toString.call(val1);
switch (type) {

// recursive if object/array
case '[object Array]':
case '[object Object]':
val2 = print_r(val1, (tab + '\t'));
break;

case '[object String]':
val2 = '\'' + val1 + '\'';
break;

default:
val2 = val1;
}
str += tab + '\t' + prop + ' => ' + val2 + ',\n';
}
}


// remove extra comma for last property
str = str.substring(0, str.length - 2) + '\n' + tab;

return isArr ? (str + ']') : (str + '}');
};

var url = "/messages?pm=1";

var rgExp = /\/[a-z0-9]{3,}(\/)?(\?)?(([a-z0-9]{1,}\=[a-z0-9]{1,})*(\&\&)?)?$/ig;

var result = url.match(rgExp);

console.log(print_r(result));
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.