mirror of
				https://github.com/explosion/spaCy.git
				synced 2025-11-04 01:48:04 +03:00 
			
		
		
		
	* Auto-format code with black * Update spacy/lang/hsb/lex_attrs.py Co-authored-by: explosion-bot <explosion-bot@users.noreply.github.com> Co-authored-by: Adriane Boyd <adrianeboyd@gmail.com>
		
			
				
	
	
		
			107 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			107 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
from ...attrs import LIKE_NUM
 | 
						|
 | 
						|
_num_words = [
 | 
						|
    "nul",
 | 
						|
    "jedyn",
 | 
						|
    "jedna",
 | 
						|
    "jedne",
 | 
						|
    "dwaj",
 | 
						|
    "dwě",
 | 
						|
    "tři",
 | 
						|
    "třo",
 | 
						|
    "štyri",
 | 
						|
    "štyrjo",
 | 
						|
    "pjeć",
 | 
						|
    "šěsć",
 | 
						|
    "sydom",
 | 
						|
    "wosom",
 | 
						|
    "dźewjeć",
 | 
						|
    "dźesać",
 | 
						|
    "jědnaće",
 | 
						|
    "dwanaće",
 | 
						|
    "třinaće",
 | 
						|
    "štyrnaće",
 | 
						|
    "pjatnaće",
 | 
						|
    "šěsnaće",
 | 
						|
    "sydomnaće",
 | 
						|
    "wosomnaće",
 | 
						|
    "dźewjatnaće",
 | 
						|
    "dwaceći",
 | 
						|
    "třiceći",
 | 
						|
    "štyrceći",
 | 
						|
    "pjećdźesat",
 | 
						|
    "šěsćdźesat",
 | 
						|
    "sydomdźesat",
 | 
						|
    "wosomdźesat",
 | 
						|
    "dźewjećdźesat",
 | 
						|
    "sto",
 | 
						|
    "tysac",
 | 
						|
    "milion",
 | 
						|
    "miliarda",
 | 
						|
    "bilion",
 | 
						|
    "biliarda",
 | 
						|
    "trilion",
 | 
						|
    "triliarda",
 | 
						|
]
 | 
						|
 | 
						|
_ordinal_words = [
 | 
						|
    "prěni",
 | 
						|
    "prěnja",
 | 
						|
    "prěnje",
 | 
						|
    "druhi",
 | 
						|
    "druha",
 | 
						|
    "druhe",
 | 
						|
    "třeći",
 | 
						|
    "třeća",
 | 
						|
    "třeće",
 | 
						|
    "štwórty",
 | 
						|
    "štwórta",
 | 
						|
    "štwórte",
 | 
						|
    "pjaty",
 | 
						|
    "pjata",
 | 
						|
    "pjate",
 | 
						|
    "šěsty",
 | 
						|
    "šěsta",
 | 
						|
    "šěste",
 | 
						|
    "sydmy",
 | 
						|
    "sydma",
 | 
						|
    "sydme",
 | 
						|
    "wosmy",
 | 
						|
    "wosma",
 | 
						|
    "wosme",
 | 
						|
    "dźewjaty",
 | 
						|
    "dźewjata",
 | 
						|
    "dźewjate",
 | 
						|
    "dźesaty",
 | 
						|
    "dźesata",
 | 
						|
    "dźesate",
 | 
						|
    "jědnaty",
 | 
						|
    "jědnata",
 | 
						|
    "jědnate",
 | 
						|
    "dwanaty",
 | 
						|
    "dwanata",
 | 
						|
    "dwanate",
 | 
						|
]
 | 
						|
 | 
						|
 | 
						|
def like_num(text):
 | 
						|
    if text.startswith(("+", "-", "±", "~")):
 | 
						|
        text = text[1:]
 | 
						|
    text = text.replace(",", "").replace(".", "")
 | 
						|
    if text.isdigit():
 | 
						|
        return True
 | 
						|
    if text.count("/") == 1:
 | 
						|
        num, denom = text.split("/")
 | 
						|
        if num.isdigit() and denom.isdigit():
 | 
						|
            return True
 | 
						|
    text_lower = text.lower()
 | 
						|
    if text_lower in _num_words:
 | 
						|
        return True
 | 
						|
    # Check ordinal number
 | 
						|
    if text_lower in _ordinal_words:
 | 
						|
        return True
 | 
						|
    return False
 | 
						|
 | 
						|
 | 
						|
LEX_ATTRS = {LIKE_NUM: like_num}
 |