post[content_1537704579186][settings][code]
Нужно получать последнее слово в квадратных скобках, то есть code
из строки.
Делаю так:
"post[content_1537704579186][settings][code]".match( /\[(.+?)\]/ig );
Но так я получаю три массива. Конечно я могу потом достать последний, о это не правильно. Вдруг элементов в скобках будет больше или мне нужно будет достать именно предпоследний.
/[^]*\[([^\][]*)]/
См. демо регулярного выражения. Суть его в том, что сначала находится вся строка ([^]*
находит ноль и более любых символов), а затем индекс движется назад в попытке найти шаблон \[([^\][]*)]
:
\[
- символ [
([^\][]*)
- Захватывающая группа №1: ноль и более символов, отличных от [
и ]
]
- символ ]
.JS-демо:
var text = "post[content_1537704579186][settings][code]";
var rx = /[^]*\[([^\][]*)]/;
console.log((m=text.match(rx)) ? m[1] : "");
/\[([^\][]+)](?![^]*\[[^\][]*])/
См. демо регулярного выражения.
Тут смысл в том, что после того, как движок найдёт \[([^\][]+)]
, шаблон (?![^]*\[[^\][]*])
(негативный блок предварительного просмотра вперёд) отменяет совпадение при нахождении ещё одной подстроки типа [...]
.
var text = "post[content_1537704579186][settings][code]";
var rx = /\[([^\][]+)](?![^]*\[[^\][]*])/;
console.log((m=text.match(rx)) ? m[1] : "");
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Нужна помощь, хочу на сайте для галереи с фотографиями использовать этот плагинАльтернатив не нашел и хочу использовать именно его
Существует проблема анимирования объектаУ объекта изменяется его ширина с помощью
Как я могу получить разницу между 2 датами в формате MM/dd/yyyy HH:mm:ss?