A substring is the part of a string. Python string provides various methods to create a substring, check if it contains a substring, index of substring etc. In this tutorial, we will look into various operations related to substrings.
فرع السلسلة في Python
لنلقِ نظرة أولاً على طريقتين مختلفتين لإنشاء فرع من السلسلة.
إنشاء فرع
يمكننا إنشاء فرع باستخدام قطع السلسلة. يمكننا استخدام وظيفة split() لإنشاء قائمة من الفروع الفرعية بناءً على الفاصل المحدد.
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']
التحقق مما إذا كان الفرع موجودًا
يمكننا استخدام المشغل in أو وظيفة find() للتحقق مما إذا كان الفرع موجودًا في السلسلة أم لا.
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]
يمكنك التحقق من النص البرمجي الكامل للبايثون والمزيد من أمثلة البايثون من مستودعنا على GitHub.
Source:
https://www.digitalocean.com/community/tutorials/python-string-substring