Рубрики
Без рубрики

Формирование проблемы: учитывая строку букв и цифр. Как разделить строку на подстроки букв или цифр, используя границу между буквой и номером и наоборот. Примеры: взгляните на следующие примеры того, что вы хотите выполнить. ‘111A222B333C’ —> [‘111’, ‘a’, ‘222’, ‘b’, ‘333’, … Как разделить строку между числами и буквами? Читать далее “

Формирование проблемы: учитывая строку букв и цифр. Как разделить строку на подстроки букв или цифр, используя границу между буквой и номером и наоборот. Примеры: взгляните на следующие примеры того, что вы хотите выполнить. ‘111A222B333C’ —> [‘111’, ‘a’, ‘222’, ‘b’, ‘333’, … Как разделить строку между числами и буквами? Читать далее “

Автор оригинала: Chris.

Проблема разработки: Учитывая строку букв и цифр. Как разделить строку на подстроки букв или цифр, используя границу между буквой и номером и наоборот.

Примеры : Посмотрите на следующие примеры того, что вы хотите выполнить.

'111A222B333C'     --->    ['111', 'A', '222', 'B', '333', 'C']
'Finxter42'        --->    ['Finxter', '42']
'Hello world'     --->    ['Hello', ' world']

Метод 1: Re.Split ()

Re.Split (шаблон, строка) Метод соответствует всем вхождению шаблон В строка и делит строку вдоль матчей, что приводит к списку строк между матчи. Например, Re.Split («A», «BBABBBAB») Результаты в списке строк [«BB», «BBB», «B»] Отказ

# Method 1: re.split()
import re
s = '111A222B333C'
res = re.split('(\d+)', s)
print(res)
# ['', '111', 'A', '222', 'B', '333', ' C']

\ D Специальный персонаж Соответствует любой цифре от 0 до 9. Используя максимальное количество цифр в качестве разделителя, вы разделены вдоль границы Digit-Word. Обратите внимание, что вы не употребляете разделенный символ, упаковывая его в Соответствующая группа Используя скобки (...) Отказ Если вы оставите в скобках, он потребляет номера, и результат не будет содержать никаких последовательных чисел.

Метод 2: Re.findall ()

Re.findall (шаблон, строка) Метод сканирует строка от слева направо , в поисках всех не перекрывающиеся матчи из шаблон Отказ Возвращает Список строк в порядке сопоставления при сканировании строки слева направо.

# Method 2: re.findall()
import re
s = '111A222B333C'

res = re.findall('(\d+|[A-Za-z]+)', s)

print(res)
# ['111', 'A', '222', 'B', '333', 'C']

Метод 3: iTertools.groupby ()

# Method 3: itertools.groupby()
from itertools import groupby
s = '111A222B333C'

res = [''.join(g) for _, g in groupby(s, str.isalpha)]
print(res)
# ['111', 'A', '222', 'B', '333', 'C']
  • Itertools.groupby (ИТЕРАЛНЫЙ,) Функция создает итератор, который возвращает кортежи (ключ, групповой итератор) сгруппирован каждым значением ключ Отказ Мы используем str.isalpha () Функция как функция ключа.
  • str.isalpha () Функция возвращает Правда Если строка состоит только из буквенных символов.

Связанные видео Re.split ()

Куда пойти отсюда?

Достаточно теории, давайте познакомимся!

Чтобы стать успешным в кодировке, вам нужно выйти туда и решать реальные проблемы для реальных людей. Вот как вы можете легко стать шестифункциональным тренером. И вот как вы польские навыки, которые вам действительно нужны на практике. В конце концов, что такое использование теории обучения, что никто никогда не нуждается?

Практические проекты – это то, как вы обостряете вашу пилу в кодировке!

Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?

Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.

Присоединяйтесь к моему бесплатным вебинаре «Как создать свой навык высокого дохода Python» и посмотреть, как я вырос на моем кодированном бизнесе в Интернете и как вы можете, слишком от комфорта вашего собственного дома.

Присоединяйтесь к свободному вебинару сейчас!

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.