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

Струнная подстрока Python

Струнная подстрока Python, как создать подстроку из строки, Python найти индекс подстроки, проверьте, присутствует ли подстрока в строке, найти и ломтик

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

Подстрока – это часть строки. String Python предоставляет различные методы для создания подстроки, проверьте, содержит ли он подстрок, индекс подстроки и т. Д. В этом руководстве мы рассмотрим различные операции, связанные с подстролами.

Струнная подстрока Python

Давайте сначала посмотрим на два разных способа создать подстроку.

Создать подстроку

Мы можем создать подстроку, используя строку нарезки. Мы можем использовать функцию разделения () для создания списка подстроек на основе указанного разделителя.

s = 'My Name is Pankaj'

# create substring using slice
name = s[11:]
print(name)

# list of substrings using split
l1 = s.split()
print(l1)

Выход:

Pankaj
['My', 'Name', 'is', 'Pankaj']

Проверка, если подстрока найдена

Мы можем использовать в Оператор или Найти () Функция Чтобы проверить, присутствует ли подстрока в строке или нет.

s = 'My Name is Pankaj'

if 'Name' in s:
    print('Substring found')

if s.find('Name') != -1:
    print('Substring found')

Обратите внимание, что find () функция возвращает положение индекса подстроки, если он найден, иначе он возвращает -1.

Количество возникновения подстроки

Мы можем использовать функцию Count (), чтобы найти количество вхождений подстроки в строке.

s = 'My Name is Pankaj'

print('Substring count =', s.count('a'))

s = 'This Is The Best Theorem'
print('Substring count =', s.count('Th'))

Выход:

Substring count = 3
Substring count = 3

Найти все индексы подстроки

Нет встроенного функции, чтобы получить список всех индексов для подстроки. Однако мы можем легко определить один, используя функцию Find ().

def find_all_indexes(input_str, substring):
    l2 = []
    length = len(input_str)
    index = 0
    while index < length:
        i = input_str.find(substring, index)
        if i == -1:
            return l2
        l2.append(i)
        index = i + 1
    return l2


s = 'This Is The Best Theorem'
print(find_all_indexes(s, 'Th'))

Выход: [0, 8, 17]