Regular Expressions


Ma'lumotlarni moslashtirish va chiqarish


Download 233.56 Kb.
bet3/5
Sana19.06.2023
Hajmi233.56 Kb.
#1609008
1   2   3   4   5
Bog'liq
Pythonlearn-11-Regex

Ma'lumotlarni moslashtirish va chiqarish

  • Biz re.findall() dan foydalansak, u oddiy ifodaga mos keladigan nol yoki undan ko'p pastki qatorlar ro'yxatini qaytaradi.

>>> import re
>>> x = 'My 2 favorite numbers are 19 and 42'
>>> y = re.findall('[0-9]+',x)
>>> print(y)
['2', '19', '42']
>>> y = re.findall('[AEIOU]+',x)
>>> print(y)
[]

Ogohlantirish: ochko'z moslik

Takroriy belgilar (* va +) mumkin bo'lgan eng katta qatorga mos kelish uchun har ikki yo'nalishda (ochko'zlik) tashqariga suriladi


>>> import re
>>> x = 'From: Using the : character'
>>> y = re.findall('^F.+:', x)
>>> print(y)
['From: Using the :']
^F.+:
Bir yoki bir nechta belgilar
Uchrashuvdagi birinchi belgi F
Uchrashuvdagi oxirgi belgi:
Why not 'From:' ?

Non-Greedy Matching

Oddiy ifodalarni takrorlash kodlarining hammasi ham ochko'z emas! Agar qo'shsangiz? belgilar, + va * biroz tinchlanadi ...


>>> import re
>>> x = 'From: Using the : character'
>>> y = re.findall('^F.+?:', x)
>>> print(y)
['From:']
^F.+?:
One or more characters but not greedy
First character in the match is an F
Last character in the match is a :

Nozik sozlash String ekstraktsiyasi

Siz re.findall() uchun moslikni aniqlab olishingiz va qavslar yordamida moslikning qaysi qismi ajratilishini alohida aniqlashingiz mumkin.


From stephen.marquard@uct.ac.za Sat Jan 5 09:14:16 2008
>>> y = re.findall('\S+@\S+',x)
>>> print(y)
['stephen.marquard@uct.ac.za’]
\S+@\S+
Kamida bitta boʻsh joy boʻlmagan belgi

Fine-Tuning String Extraction

Скобки не являются частью совпадения, но они говорят, где начать и где остановиться, какую строку извлечь.


From stephen.marquard@uct.ac.za Sat Jan 5 09:14:16 2008
^From (\S+@\S+)
>>> y = re.findall('\S+@\S+',x)
>>> print(y)
['stephen.marquard@uct.ac.za']
>>> y = re.findall('^From (\S+@\S+)',x)
>>> print(y)
['stephen.marquard@uct.ac.za']

Download 233.56 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling