RegEx для извлечения символов между двоеточиями - PullRequest
2 голосов
/ 21 мая 2019

Я пытаюсь извлечь текст между двумя двоеточиями, без них и пробелов, но с моим кодом я всегда получаю два двоеточия.

Приговор: xxxxxxx: hello world, my name is AAAA :description

Теперь мне нужно: hello world, my name is AAAA

С (\:[^:]*\:) Я получаю: : hello world, my name is AAAA :

Как мне решить эту проблему?

1 Ответ

1 голос
/ 21 мая 2019

Вы можете использовать lookarounds , чтобы утверждать, что слева, а что справа - двоеточие.

Для сопоставления вы можете использовать отрицательный класс символов [^:]*, чтобы сопоставить, чтобы соответствовать 0+ раз, а не двоеточие. Если вы хотите сопоставить хотя бы 1 символ, вы можете изменить квантификатор на + вместо *

(?<=:)[^:]*(?=:)

Regex demo

...