Как взять подстроку в специальное положение - PullRequest
0 голосов
/ 11 ноября 2019

Могу ли я спросить вас, как получить подстроку после первых 2 слов и последнего слова

Hello MR Bill Gates

Я хотел бы получить Bill в этом случае.

Другой случай:

Microsoft Windows Server 2008 R2 Enterprise

должно быть

Server 2008 R2

Для:

Hello amazing world of 2020 year

Это должно быть

world of 2020

Ответы [ 3 ]

0 голосов
/ 11 ноября 2019

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

input_string = 'Microsoft Windows Server 2008 R2 Enterprise'

print(input_string)   

i= [p for p, char in enumerate(input_string) if char == ' ']

result = input_string[i[1]: i[-1]].strip()

print(result)

Обновлено : коротко и сладко:

' '.join(input_string.split()[2:-1])
0 голосов
/ 11 ноября 2019

Сначала разбейте его на слова, выберите слова между вторым и последним, объедините в строку:

' '.join(s.split()[2:-1])

, где s - ваша строка.

0 голосов
/ 11 ноября 2019

Допустим, ваша строка хранится в переменной s Шаг 1. Разбейте вашу строку на слова. Слова разделяются пробелами

s.split(' ')

Шаг 2: Получить все слова ПОСЛЕ 2 слов и ДО последнего слова

s.split(' ')[2:-1]

Шаг 3: Соединить эти слова и вернуть результат

' '.join(s.split(' ')[2:-1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...