У меня есть DataFrame 'tdf' со столбцом "Cars", где значения - это 4 буквы, а затем 1-6 цифр.
Cars
JAXT450678
KYXS 56746
LMOP01456
...
Я скомпилировал регулярное выражение, чтобы соответствовать ему:
r'(?=[a-zA-Z]{4}\s*\d{1,6}\b)([a-zA-Z]{4})(\s?\d+)'
Что я хочу сделать, так это убрать пробелы, а затем убедиться, что если во второй группе меньше 6 цифр, вставьте 0, начиная со второй, до тех пор, пока не будет достигнут счет 6, чтобы результат :
Cars
JAXT450678
KYXS056746
LMOP001456
...
Любая помощь приветствуется. Я попытался поиграться с .replace
и .sub
и могу заставить его заменить весь матч, но я не знаю, как ссылаться на группу и иметь динамическое совпадение.
tdf = tdf.replace(r'(?=[a-zA-Z]{4}\s*\d{1,6}\b)([a-zA-Z]{4})(\s?\d+)','000000', regex = True)