۶ کیو· متوسطمتوسطPYTHON۴ ثانیه · ۲۵۶ مگابایت
یکسانسازی و توکنسازی متن فارسی
متن فارسی پیش از هر شمارشی باید یکسان شود؛ وگرنه «كتاب» با کاف عربی و «کتاب» با کاف فارسی دو واژهی متفاوت شمرده میشوند. تابع persian_tokens(text) این گامها را به همین ترتیب انجام میدهد:
- حروف عربی به فارسی:
ي(U+064A) وى(U+0649) بهی(U+06CC)، وك(U+0643) بهک(U+06A9). - حذف اعراب (فتحه، کسره، ضمه، تنوین، تشدید، سکون: U+064B تا U+0652) و کشیده (ـ، U+0640).
- رقمها به لاتین: رقمهای فارسی (۰ تا ۹، U+06F0 تا U+06F9) و عربی (٠ تا ٩، U+0660 تا U+0669) به
0تا9. - توکنها: هر دنبالهی پیوسته از کاراکترهایی که یا حرف و رقماند (
\wدر پایتون) یا نیمفاصله (U+200C). یعنیre.findall(r"[\w]+", text). علامتها و فاصلهها جداکنندهاند و نیمفاصله جزء کلمه میماند: «کتابها» یک توکن است.
خروجی: فهرست توکنها.
نمونهها
ورودی نمونه ۱
["كتابهاي خوبي خواندم."]
خروجی نمونه ۱
["\u06a9\u062a\u0627\u0628\u200c\u0647\u0627\u06cc", "\u062e\u0648\u0628\u06cc", "\u062e\u0648\u0627\u0646\u062f\u0645"]
برای نوشتن پاسخ و دریافت امتیاز، ابتدا وارد حساب شوید.
ورود