У меня действительно ужасная команда, в которой я использую множество добавленных методов replace () для замены / замены / очистки множества различных строк из исходной строки.Например:
newString = originalString.replace(' ', '').replace("\n", '').replace('()', '').replace('(Deployed)', '').replace('(BeingAssembled)', '').replace('ilo_', '').replace('ip_', '').replace('_ilop', '').replace('_ip', '').replace('backupnetwork', '').replace('_ilo', '').replace('prod-', '').replace('ilo-','').replace('(EndofLife)', '').replace('lctcvp0033-dup,', '').replace('newx-', '').replace('-ilo', '').replace('-prod', '').replace('na,', '')
Как видите, это очень уродливое утверждение, и очень трудно узнать, какие строки в длинной команде.Это также затрудняет повторное использование.
Что я хотел бы сделать, это определить входной массив из множества замещающих пар, где замещающая пара выглядит как [<ORIGINAL_SUBSTRING>, <NEW_SUBSTRING>]
;где больший массив выглядит примерно так:
replacementArray = [
[<ORIGINAL_SUBSTRING>, <NEW_SUBSTRING>],
[<ORIGINAL_SUBSTRING>, <NEW_SUBSTRING>],
[<ORIGINAL_SUBSTRING>, <NEW_SUBSTRING>],
[<ORIGINAL_SUBSTRING>, <NEW_SUBSTRING>]
]
И , я хотел бы передать этот replaceArray вместе с исходной строкой, которую необходимо очистить, функции, которая имеетструктурировать что-то вроде:
def replaceAllSubStrings(originalString, replacementArray):
newString = ''
for each pair in replacementArray:
perform the substitution
return newString
МОЙ ВОПРОС IS: Как правильно написать блок кода функции, чтобы применить каждую пару в replaceArray?Должен ли я использовать метод replace ()?Метод sub ()?Я не понимаю, как преобразовать исходный код в красивую чистую функцию.
Заранее благодарю за любую помощь, которую вы можете предложить.