اگر قصد دارید که یک عبارت بعد از یک کلمه خاص را از نوشته جدا کنید به کمک عبارات با قاعده می توانید این کار را انجام دهید.
فرض کنید که می خواهید از یک نوشته خریدار و فروشنده را مشخص و جدا کنید
import re text = """ خریدار : آرون فروشنده : آب شناس تعداد: 3 قیمت:1,788,000 ساعت: 13:36:56 1398/05/23 شماره حواله: 380312 """ text=text.replace(' ','') text=text.replace(',','') buyer= re.search(r"[\n\r].*خریدار : \s*([^\n\r]*)",text) print(buyer.group(1)) seller=re.search(r"[\n\r].*فروشنده : \s*([^\n\r]*)",text) print((seller.group(1))) price=re.search(r"[\n\r].*قیمت:\s*([^\n\r]*)",text) print(price.group(1)) count=re.search(r"(?<=\bتعداد:\s)(\w+)",text) print(count.group(1))
خط اول ماژول re را برای عبارات با قاعده ایمپورت می کنیم
خط دوم متن خود را تعریف می کنیم
خط نه و ده مقادیر اضافه رو حذف می کنیم
به کمک خط ۱۱ و ۱۵ و ۱۸ عبارات بعد کلمات خود را جدا می کنیم
به کمک خط ۲۲ فقط یک کلمه بعد از قیمت را جدا می کنیم ( چون فقط به عدد ۳ نیاز داریم)
پاسخها