Справка по регулярным выражениям в Python для извлечения конкретной строки, как указано ниже - PullRequest
0 голосов
/ 18 февраля 2019

извлечь строку после 1008 и перед дефисом в следующей строке

ad - 1007-1008 qw rt v qw gh - 11/11 / 1008

Ответы [ 2 ]

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

Я видел, что вы впервые задаете вопрос по SO, поэтому предложил бы вам быстро пройти Как задать хороший вопрос , как кто-то предложил в комментариях.Вы должны показать свои усилия, которые вы пытались решить проблему в своем посте здесь.Это также увеличивает вероятность того, что другие опубликуют свой ответ, а также может спасти ваш пост от отрицательных голосов.Кроме того, вы должны перечислить ожидаемый результат в сравнении с фактическим выходом вашей программы, чтобы сделать его еще более понятным.

Тем не менее, я думаю, что у меня есть ваш вопрос, и, хотя он кажется немного широким, и вот мое решение.Дайте мне знать, если это то, что вы искали.

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

(?<=1008).+(?=-)

Демонстрация

Демонстрация кода Python,

import re

s = 'ad - 1007-1008 qw rt v qw gh - 11/11/1008'
print(re.search(r'(?<=1008).+(?=-)',s).group())

Печать,

 qw rt v qw gh

Аналогично, неРешение на основе lookaround будет следующим, где вы удаляете lookarounds и вместо этого используете group для захвата нужного текста с помощью следующего регулярного выражения:

1008(.+)-

Demo

Демо-код Python,

import re

s = 'ad - 1007-1008 qw rt v qw gh - 11/11/1008'
print(re.search(r'1008(.+)-',s).group(1))

Отпечатки,

 qw rt v qw gh
0 голосов
/ 18 февраля 2019

Из-за отсутствия информации с вашей стороны, чтобы дать подробный вопрос, это самое близкое, что мы можем получить

string="ad - 1007-1008 qw rt v qw gh - 11/11/1008"
print(string[14:-16])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...