Python регулярные выражения слово bounaries - PullRequest
0 голосов
/ 18 февраля 2020

Здравствуйте. У меня есть текстовая строка, подобная этой ниже, и я пытаюсь использовать регулярные выражения для извлечения общего объема продаж, который можно найти сразу после новой строки после того, как общий объем продаж \ n43, например, 43, составит общий объем продаж. Я использую следующую команду, но я хочу сбросить общий объем продаж и \ n и просто сохранить количество. Мне интересно, как я могу go об этом или мне нужно будет сделать дополнительную обработку. Спасибо

'\ufeffSacramento Association of REALTORS®\nSingle Family Home Sales by ZIP CODE\nJanuary 2020\nZip        
 Code\nCurrent Month\nLast Month\nLast Year\nYear-to-Date\nTotal Sales\n43\nREO  
 Sales\n0\n45\n40\n43\nMedian Sales Price\n$417,000\n$0\n$410,000\n$400,000\n$417,000\nAverage    
 Price/Square Foot\n$268\nShort Sales\n0\n$253\n$239\nN/A\nAverage Sq Ft of  
 Property\n1,769\n$0\n1,746\n1,843\nN/A\nTotal Listing Inventory 
 *\n69\nConventional\n43\n65\n90\nN/A\nTotal Listing Median Price 
 ∞\n$612,475\nSales\n$417,000\n$574,900\n$547,475\nN/A\nTotal Sales\n29\nREO 
 **strong text**Sales\n0\n37\n16\n29\nMedian Sales Price\n$369,000

Я использую такую ​​команду:

 total_sales = re.findall(r'\bTotal Sales\n\d{2}',data)

, которая возвращает:

 ['Total Sales\n43',
 'Total Sales\n29',
 'Total Sales\n29',
 'Total Sales\n32',
 'Total Sales\n30',
 'Total Sales\n52',    

Ответы [ 2 ]

0 голосов
/ 18 февраля 2020

Это будет работать для вас:

re.findall(r'\bTotal Sales\n(\d*)',data)
0 голосов
/ 18 февраля 2020

Используйте позитивный взгляд позади: (?<=Total Sales\n)\d{2}. Таким образом, он проверяет, предшествует ли строке Total Sales\n шаблону \d{2}. И только захватить это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...