Как удалить подстроку в python - PullRequest
0 голосов
/ 19 апреля 2020

У меня есть строка, в которой дата и время меняются в соответствии с отчетом.

String = "Engine NOrc04/14/20 11:24XX5555-May-2021" 

Я хочу удалить «14.04.20 11:24», потому что он меняется каждый раз, когда я генерирую отчет .

output = "Engine NOrcXX5555-May-2021"

Ответы [ 2 ]

1 голос
/ 19 апреля 2020

Slicing

Если формат строки не изменяется, вы можете нарезать строку следующим образом:

string = "Engine NOrc04/14/20 11:24XX5555-May-2021"
new_string = string[:11] + string[25:]
print(new_string)

string = "Engine NOrc04/14/20 11:24XX5555-May-2021 report contains below information..."
new_string = string[:11] + string[25:]
print(new_string)

Вывод

Engine NOrcXX5555-May-2021
Engine NOrcXX5555-May-2021 report contains below information...

Использование регулярного выражения

Если время появляется в разных частях строки, но формат времени не меняется, вы можете использовать re.sub() для замены строки времени:

import re

string = 'Engine NOrc04/14/20 11:24XX5555-May-2021 report contains below information...'
new_string = re.sub('\d\d/\d\d/\d\d \d\d:\d\d', '', string)
print(new_string)

string = 'SOME OTHER RANDOM STRING 04/14/20 11:24 THIS IS A DIFFERENT STRING'
new_string = re.sub('\d\d/\d\d/\d\d \d\d:\d\d', '', string)
print(new_string)

Вывод:

Engine NOrcXX5555-May-2021 report contains below information...
SOME OTHER RANDOM STRING  THIS IS A DIFFERENT STRING
0 голосов
/ 19 апреля 2020

Используйте regex, чтобы найти дату и замените ее пустой строкой.

import re

string = "Engine NOrc04/14/20 11:24XX5555-May-2021"
result = re.sub(r"\d\d/\d\d/\d\d \d\d:\d\d", "", string)
print(result)

output

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