Как мне захватить последние два символа в этом регулярном выражении? - PullRequest
0 голосов
/ 21 декабря 2018

Пока у меня есть

lastUpdatedTimestamp":.+?:..

Образец тестовой строки

{"availableSpots":3,"trend":"STATIC","lastUpdatedTimestamp":"2018-12-21T14:50:03Z"},"probability":[{}]},

Я хочу 50

Ответы [ 2 ]

0 голосов
/ 21 декабря 2018

На основе вашего образца вы можете использовать:

\d:(\d+):\d

или:

:(\d+):

Вы не указали используемый язык программирования, но в общем случае,результат находится в группе захвата 1


Regex Demo


Regex Объяснение:

enter image description here

0 голосов
/ 21 декабря 2018

Используйте группу захвата для части, которую вы хотите извлечь:

lastUpdatedTimestamp":.+?:(..)

Затем используйте механизм вашего инструмента, чтобы получить значение первой группы захвата.

Вы можете использовать lookbehind , если ваш инструмент поддерживает это.Поскольку большинству реализаций просмотра за задний план требуется фиксированный размер просмотра за раз, вам необходимо удалить квантификатор +? и, например, использовать точное количество символов, например:

(?<=lastUpdatedTimestamp":.{14}:)..
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...