Разделить на слово (без учета регистра)

Если я хочу взять

"hi, my name is foo bar"

и разделить его на"foo"и иметь это разделение без учета регистра (разделение на любой из"foO", "FOO", "Foo"и т.д.), что мне делать? Имейте в виду, что хотя я хотел бы, чтобы разделение не чувствительно к регистру, я также хочу поддерживать чувствительность к регистру остальной части строки.

Так что если у меня есть:

test = "hi, my name is foo bar"

print test.split('foo')

print test.upper().split("FOO")

я бы получил

['hi, my name is ', ' bar']
['HI, MY NAME IS ', ' BAR']

соответственно.

Но что яхочу является:

['hi, my name is ', ' bar']

каждый раз. Цель состоит в том, чтобы сохранить чувствительность к регистру исходной строки, за исключением того, что я делю на.

Так что, если моя тестовая строка была:

"hI MY NAME iS FoO bar"

мой желаемый результат будет:

['hI MY NAME iS ', ' bar']

Ответы на вопрос(2)

Ваш ответ на вопрос