Python регулярное выражение соответствует середине строки
8959 просмотра
1 ответ
У меня есть строка Python, которую я пытаюсь извлечь. У меня есть интересная проблема:
>>> s="SKU 9780136058281, (ASIN B00A2KNZ2S, (binding Merchant: 'paperback' / 'hardcover'))"
>>> print(re.match('ASIN', s))
None
>>> print(re.match('SKU', s))
<_sre.SRE_Match object; span=(0, 3), match='SKU'>
Я пытаюсь набрать номер после ASIN. Я до сих пор не вижу очевидной проблемы. Соответствует началу строки, но не посередине.
Автор: Arun Источник Размещён: 13.11.2019 11:36Ответы (1)
25 плюса
Решение
Вам нужно использовать re.search
и группировку , и заметку, которая re.match
соответствует шаблону с начала строки:
>>> s="SKU 9780136058281, (ASIN B00A2KNZ2S, (binding Merchant: 'paperback' / 'hardcover'))"
>>> import re
>>> re.search(r'SKU (\d+)',s).group(1)
'9780136058281'
r'SKU (\d+)
будет соответствовать любой комбинации цифр ( \d
) с длиной 1 или более после SKU
пробела!
Вопросы из категории :
- python Обработка XML в Python
- python Как я могу использовать Python itertools.groupby ()?
- python Python: На какой ОС я работаю?
- python Как я могу создать непосредственно исполняемое кроссплатформенное приложение с графическим интерфейсом на Python?
- python Вызов функции модуля с использованием его имени (строки)
- regex Learning Regular Expressions
- regex Regex и unicode
- regex Мое регулярное выражение слишком подходит. Как мне это остановить?
- regex Как выполнить подстановку Perl для строки, сохранив оригинал?
- regex Замена n-го экземпляра совпадения с регулярным выражением в Javascript
- python-3.x Могу ли я установить Python 3.x и 2.x на одном компьютере с Windows?
- python-3.x Что является альтернативой execfile в Python 3?
- python-3.x Каков наилучший способ удалить акценты в строке Unicode Python?
- python-3.x Удаление значка TK в окне Tkinter
- python-3.x Преобразовать байты в строку?
- python-2.7 Как получить десятичное значение при использовании оператора деления в Python?
- python-2.7 Самый чистый способ получить последний элемент из итератора Python
- python-2.7 Перебор словарей с использованием циклов for
- python-2.7 Как удалить Python 2.7 на Mac OS X 10.6.4?
- python-2.7 Python - домашнее задание - преобразование любой базы в любую базу