Sobes.tech
Intern

Фарқи байни rematch ва research чист?

sobes.tech AI

Ҷавоб аз AI

re.match ва re.search — это функсияҳо аз модул re, ки барои ҷустуҷӯи мувофиқатҳо дар сатр бо истифода аз изразҳои мунтазам истифода мешаванд.

Асосӣ фарқ дар он аст, ки онҳо дар куҷо оғоз мекунанд:

  • re.match танҳо дар оғози сатр мувофиқатро санҷида мекунад.
  • re.search тамоми сатрро скан мекунад ва аввалин мувофиқати пайдошударо бармегардонад.

Агар мувофиқат пайдо шавад, ҳарду функсия объекти мувофиқатро (match object) бармегардонанд. Дар акси ҳол, None бармегардонад.

Масалан:

import re

matn = "футбол, теннис, баскетбол"

# Ҷустуҷӯи "теннис" дар оғози сатр бо match
натича_match = re.match("теннис", матн)
print(f"Натиҷаи match: {натича_match}") # Нишон медиҳад None

# Ҷустуҷӯи "теннис" дар ҳар ҷое аз сатр бо search
натича_search = re.search("теннис", матн)
print(f"Натиҷаи search: {натича_search}") # Нишон медиҳад <re.Match object; span=(9, 15), match='теннис'>

Мувофиқат:

Хусусият re.match(pattern, string) re.search(pattern, string)
Минтақаи ҷустуҷӯ Танҳо дар оғози сатр Дар тамоми сатр
Варақгардонӣ Объекти мувофиқат ё None Объекти мувофиқат ё None
Истифода Санҷиши пешинаи сатр Ҷустуҷӯи зерсатр бо намуна

Ҳарду функсия флагҳоро (flags) барои тағир додани рафтори ҷустуҷӯ дастгирӣ мекунанд, масалан, re.IGNORECASE.