Модулдар
September 16, 2023
RE МОДУЛУ
Салам! Pythonдо, re модулу ийкемдүү издөөгө жана текстти манипуляциялоого мүмкүндүк берген үзгүлтүксүз туюнтма функцияларын камсыз кылат. Бул жерде re модулунун кээ бир негизги функциялары:
re.compile(pattern)
: Бул функция регулярдуу туюнтманы саптарда ар кандай операцияларды аткаруу үчүн колдонула турган объектке түзөт.re.search(pattern, string)
: саптагы регулярдуу туюнтмага дал келген субсаптын биринчи көрүнүшүн издейт.re.match(pattern, string)
: Саптын башындагы кадимки туюнтмага дал келет.re.fullmatch(pattern, string)
: Бардык сап кадимки туюнтмага дал келгенин текшерет.re.findall(pattern, string)
: саптагы регулярдуу туюнтмага дал келген подсаптын бардык көрүнүштөрүн табат.re.finditer(pattern, string)
: Саптагы регулярдуу туюнтмага дал келген подсаптын бардык көрүнүштөрү боюнча кайталануучу итераторду кайтарат.re.sub(pattern, repl, string)
: Регулярдуу туюнтмага дал келген ички саптын бардык көрүнүштөрүн башка ички сап менен алмаштырат.re.split(pattern, string)
: Сапты кадимки туюнтмага дал келген ички саптарга бөлөт.
КОД МЕНЕН МИСАЛ
re.compile(pattern):
import re pattern = r'\d+' # Бул регулярдуу сөз айкашы сандар ырааттуулугун издейт regex = re.compile(pattern) result = regex.findall('Жашы: 30, Бою: 175, Веси: 70') print(result) # ['30', '175', '70'] :Чыгат
re.search(pattern, string):
import re pattern = r'\d+' #Сандардын ырааттуулугун издейбиз result = re.search(pattern, 'Жашы: 30, Бою: 175, Веси: 70') if result: print(result.group()) # 30: Чыгат
re.match(pattern, string):
import re pattern = r'Salam' # Саптын башында "Салам" дегенди издейбиз result = re.match(pattern, 'Salam, World!') if result: print('Дал келүү табылды') else: print('Эч нерсе табылган жок')
re.fullmatch(pattern, string):
import re pattern = r'Salam, World!' # Так дал келүүнү издеп жатабыз result = re.fullmatch(pattern, 'Salam, World!') if result: print('Дал келүү табылды') else: print('Эч нерсе табылган жок')
re.findall(pattern, string):
import re pattern = r'\d+' # Биз сандардын бардык ырааттуулугун издеп жатабыз result = re.findall(pattern, 'Жашы: 30, Бою: 175, Веси: 70') print(result) # ['30', '175', '70'] :Чыгат
re.finditer(pattern, string):
import re pattern = r'\d+' # Биз сандардын бардык ырааттуулугун издеп жатабыз matches = re.finditer(pattern, 'Жашы: 30, Бою: 175, Веси: 70') for match in matches: print(match.group())
re.sub(pattern, repl, string):
import re pattern = r'көк|жашыл' # "көк" же "жашыл" издеп жатасыз replacement = 'кызыл' result = re.sub(pattern, replacement, 'Асман көк, чөп жашыл') print(result) # Асман кызыл, чөп кызыл
re.split(pattern, string):
import re pattern = r',\s*' # Пробел менен үтүр менен бөлөбүз result = re.split(pattern, 'алма, банан, алмурут, өрүк') print(result) # ['алма', 'банан', 'алмурут', 'өрүк'] :Чыгат
Кадимки сөз айкаштары текстти издөө жана иштетүү үчүн татаалыраак үлгүлөрдү түзүүгө мүмкүндүк берет. Мисалы, сиз так издөө үлгүлөрүн көрсөтүү үчүн метабелгилерди, сандык көрсөткүчтөрдү жана топторду колдоно аласыз.