Показать сообщение отдельно
  #4 (permalink)  
Старый 24.07.2014, 22:14
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,585

str = 'foo bar';
var res = str.match(/(?:foo)\w*/);
alert(res)

"(?:foo)" - foo в незапоминающих скобках. В данном случае, поскольку к скобкам не добавлены никакие множители это равносильно просто "foo".
"\w*" - 0 и более раз повторённый символ из диапазона [a-zA-Z0-9_]. В данном случае поскольку после foo идёт сразу пробел, получается вариант с 0 символов.
В результате находит только "foo".

Чтобы выводил bar если известно только foo:
str = 'foo bar';
var res = str.match(/foo\s+(\w+)/);
alert(res[1])
alert(res)
__________________
29375, 35

Последний раз редактировалось Aetae, 24.07.2014 в 22:16.
Ответить с цитированием