Простое регулярное выражение для извлечения содержимого в квадратных скобках в jQuery - PullRequest
3 голосов
/ 04 февраля 2010

У меня есть набор элементов с именами, похожими на «comp [1] .Field» или «comp [3] .AnotherField», где изменяется индекс (1 или 3). Я пытаюсь извлечь индекс из имени.

Прямо сейчас я использую:

var index = $(":input:last").attr("name").match(/\[(\d+)\]/)[1];

но я не чувствую, что это лучший способ сделать это.

Есть предложения?

Спасибо

1 Ответ

2 голосов
/ 04 февраля 2010

То, что у вас есть, на самом деле является довольно хорошим способом сделать это, но вы должны добавить некоторую проверку, которая гарантирует, что match () на самом деле возвращает массив (то есть строка была найдена), а не ноль, иначе вы получите тип ошибка.

пример:

var index = $(":input:last").attr("name").match(/\[(\d+)\]/);
if (match) { index = match[1]; }
else { /* no match */ }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...