Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # строка
- src = '2017-08-13 20:30:19,622.622 INFO [VariousName] version [0.1] starting...'
- # хочу заменить "[VariousName_include_alphanumeric_plus_dot]" на "[VariousName_include_alphanumeric_plus_dot] "
- # где пробелы в конце - паддинг в 15 символов
- re.sub("(\[[a-zA-Z0-9.]*\])", replacement, res)
- # сделал функцию замены
- def replacement(m):
- s = m.string
- lo, hi = m.span(0)
- s1 = s[:lo]
- s2 = s[lo:hi].ljust(15)
- s3 = s[hi:]
- s = s1 + s2 + s3
- return s
- # при первом найденном значении "[VariousName]" и замены выходная строка:
- # '2017-08-13 20:40:47,107.107 INFO [VariousName] version [0.1] starting...'
- # но когда доходит до "[0.1]" то на вход поступает "s = m.string" исходная строка:
- # '2017-08-13 20:30:19,622.622 INFO [VariousName] version [0.1] starting...' а не измененная при первом найденном
- # значениии, в результате:
- # '2017-08-13 20:40:47,107.107 INFO [VariousName] version [0.1] starting...'
Add Comment
Please, Sign In to add comment