Expand description
Compile-time constants: suffix lists, punctuation sets.
Constants§
- AFFIX_
SPACING_ PATTERNS (pattern, replacement)pairs for attaching prefixes/suffixes with ZWNJ.- DIACRITICS_
PATTERN - Regex pattern that matches Arabic diacritical marks to be removed.
- EMAIL_
PATTERN - Pattern for e-mail addresses.
- EMOJI_
PATTERN - Emoji range pattern (covers major Unicode emoji blocks).
- EXTRA_
SPACE_ PATTERNS (pattern, replacement)pairs for removing redundant whitespace and ZWNJ.- HASHTAG_
PATTERN - Pattern for hashtags.
- ID_
PATTERN - Pattern for Social-network @mentions.
- LINK_
PATTERN - Pattern for URLs/links.
- MORE_
THAN_ TWO_ REPEAT_ PATTERN - Matches any Persian letter repeated 3+ times in a row.
- NUMBERS_
DST - Persian equivalents used to replace NUMBERS_SRC characters.
- NUMBERS_
SRC - Source characters for digit conversion (ASCII/Arabic → Persian).
- NUMBER_
FLOAT_ PATTERN - Pattern for floating-point numbers.
- NUMBER_
INT_ PATTERN - Pattern for integer numbers (both ASCII and Persian digits).
- PERSIAN_
LETTERS - All standard Persian/Arabic letters, used to build character class patterns.
- PERSIAN_
STYLE_ PATTERNS (pattern, replacement)pairs for Persian typographic style.- PUNCTUATION_
SPACING_ PATTERNS (pattern, replacement)pairs for normalizing spacing around punctuation.- REPEATED_
CHARS_ PATTERN - Matches entire words that contain a Persian letter repeated 3+ times.
- SEPERATE_
MI_ PATTERN - Pattern used in
seperate_mi— matches می/نمی attached to a verb stem. - SPECIAL_
CHARS_ PATTERN - Regex pattern matching rare/decorative Unicode code points to be stripped.
- SUFFIXES
- Inflectional and derivational suffixes stripped by the rule-based stemmer.
- TRANSLATION_
DST - Destination characters for the Unicode normalization table.
- TRANSLATION_
SRC - Source characters for Unicode normalization (maps variant forms to standard Persian).
- UNICODE_
REPLACEMENTS - Pairs of (ligature, replacement text) for common Arabic/Persian Unicode ligatures.
- WORD_
SPLIT_ PATTERN - Main tokenization split pattern — splits on punctuation, brackets, digits.