Python. Регулярные выражения как разделить слово на слова MichaelJordanDepOfDefense предложения с пробелами

Python. Регулярные выражения как разделить слово на слова "MichaelJordanDepOfDefense" или "JordanSmithWorthy2" предложения с пробелами. Где разделить большие буквы и цифры

"MichaelJordanDepOfDefense" => "Michael Jordan Dep Of Defense"

"JordanSmithWorthy2" => "Jordan Smith Worthy 2"

а если предложение разделено то ничего не делать

"Michael Jordan and Barack Obama at the White House" => "Michael Jordan and Barack Obama at the White House"


Ответы (1 шт):

Автор решения: nomnoms12

Регулярное выражение: (?<=[a-z0-9])[A-Z0-9].

Пример:

import re


string = 'MichaelJordanDepOfDefense'
result = re.sub(r'(?<=[a-z0-9])[A-Z0-9]', r' \g<0>', string)
print(result)

stdout:

Michael Jordan Dep Of Defense
→ Ссылка