@Gambetto

Почему строка не подходит под регулярное выражение?

Шаблон: ^.*\[[^\d,]*\].*$
Строка: anything[2287172,1932347]anything
Нужно оставить только содержимое скобок [], но по такому паттерну строка не меняется. Почему?
  • Вопрос задан
  • 258 просмотров
Решения вопроса 2
yarkov
@yarkov
Помог ответ? Отметь решением.
Потому что надо так:
import re

string = 'anything[2287172,1932347]anything'
pattern = re.compile('^.+\[([\d,]+)\].+$')
string = pattern.match(string).group(1)
print string
Ответ написан
@abcd0x00
>>> import re
>>> 
>>> s = 'anything[2287172,1932347]anything'
>>> 
>>> re.search(r'\[([^]]*)\]', s).group(1)
'2287172,1932347'
>>>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
berezuev
@berezuev
#define TRUE FALSE
^.+\[([\d,]+)\].+$

Если нужно будет цифры разбить, то через split
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
18 мая 2024, в 22:58
3000 руб./за проект
18 мая 2024, в 21:07
5000 руб./за проект
18 мая 2024, в 20:58
5000 руб./за проект