Регулярное выражение Python получает значение между двумя словами из нескольких строк - PullRequest
0 голосов
/ 11 октября 2019

Ниже приведен файл, в котором я пытаюсь получить все значения и все вхождения между Данные и Столбец

Текущий код

import re

filedata = open('test.csv', 'r')

re.findall(r'data\n+(.*)', filedata.read(), re.I)

Токовый выход

output = ['1,test', '10,test', '100,test']

Ожидаемый выход из файла ниже

output = ['1,test', '2,test', '10,test', '11,test', '100,test', '200,test]

test.csv

Column
Num,Tape
data

1,test
2,test

column
Num,Tape
Data

10,test
20,test

column
Num,Tape
Data
100,test
200,test

Ответы [ 2 ]

0 голосов
/ 13 октября 2019

Вы должны попробовать это:

import re

filedata = open('test.csv', 'r')

re.findall(r'\d+.+', filedata.read(), re.I)
0 голосов
/ 11 октября 2019
import re

filedata = open('test.csv', 'r')

re.findall(r'^((?!column|data|Num|Tape).+)+$', filedata.read(), re.MULTILINE | re.IGNORECASE)

Не уверен, что это то, что вы хотите.

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