Как удалить слово целиком, если оно содержит определенные символы в python - PullRequest
0 голосов
/ 21 июня 2020

Я хотел удалить слово в предложении, если слово начинается или содержит определенные символы.

Пример:

string_s = '( active parts ) acetylene cas89343-06-6'

если слово содержит или начинается с cas удалить все слово из строки

input1 =  '( active parts ) acetylene cas89343-06-6'
output1 = '( active parts ) acetylene'

input2 = '( active parts ) acetylene th.cas1345'
output2 = '( active parts ) acetylene'

Ответы [ 3 ]

1 голос
/ 21 июня 2020

Используйте re.sub с шаблоном \b[\w-]*cas[\w-]*\b и замените одним пробелом, затем обрежьте вывод:

string_s = '( active parts ) acetylene cas89343-06-6'
output = re.sub(r'\b[\w-]*cas[\w-]*\b', ' ', string_s).strip()
print(string_s + '\n' + output)

Это напечатает:

( active parts ) acetylene cas89343-06-6
( active parts ) acetylene
0 голосов
/ 21 июня 2020

Один лайнер:

' '.join([*filter(lambda x: "cas" not in x, input1.split())])
0 голосов
/ 21 июня 2020

вы можете сделать это: -

string = "hello how are you"
character = "a"
newString = []
for i in string.split(' '):
    if not character in i:
        newstring.append(i)
newString = ' '.join(newString)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...