mirror of
				https://github.com/explosion/spaCy.git
				synced 2025-11-04 09:57:26 +03:00 
			
		
		
		
	Update Portuguese lexical attributes
This commit is contained in:
		
							parent
							
								
									2f870123bf
								
							
						
					
					
						commit
						bca2ea9c72
					
				| 
						 | 
				
			
			@ -1,21 +1,38 @@
 | 
			
		|||
# coding: utf8
 | 
			
		||||
from __future__ import unicode_literals
 | 
			
		||||
 | 
			
		||||
from ...attrs import LIKE_NUM
 | 
			
		||||
 | 
			
		||||
# Number words
 | 
			
		||||
 | 
			
		||||
NUM_WORDS = set("""
 | 
			
		||||
zero um dois três quatro cinco seis sete oito nove dez onze doze treze catorze
 | 
			
		||||
quinze dezasseis dezassete dezoito dezanove vinte trinta quarenta cinquenta
 | 
			
		||||
sessenta setenta oitenta noventa cem mil milhão bilião trilião quadrilião
 | 
			
		||||
""".split())
 | 
			
		||||
_num_words = ['zero', 'um', 'dois', 'três', 'quatro', 'cinco', 'seis', 'sete',
 | 
			
		||||
              'oito', 'nove', 'dez', 'onze', 'doze', 'treze', 'catorze',
 | 
			
		||||
              'quinze', 'dezasseis', 'dezassete', 'dezoito', 'dezanove', 'vinte',
 | 
			
		||||
              'trinta', 'quarenta', 'cinquenta', 'sessenta', 'setenta',
 | 
			
		||||
              'oitenta', 'noventa', 'cem', 'mil', 'milhão', 'bilião', 'trilião',
 | 
			
		||||
              'quadrilião']
 | 
			
		||||
 | 
			
		||||
# Ordinal words
 | 
			
		||||
_ord_words = ['primeiro', 'segundo', 'terceiro', 'quarto', 'quinto', 'sexto',
 | 
			
		||||
              'sétimo', 'oitavo', 'nono', 'décimo', 'vigésimo', 'trigésimo',
 | 
			
		||||
              'quadragésimo', 'quinquagésimo', 'sexagésimo', 'septuagésimo',
 | 
			
		||||
              'octogésimo', 'nonagésimo', 'centésimo', 'ducentésimo',
 | 
			
		||||
              'trecentésimo', 'quadringentésimo', 'quingentésimo', 'sexcentésimo',
 | 
			
		||||
              'septingentésimo', 'octingentésimo', 'nongentésimo', 'milésimo',
 | 
			
		||||
              'milionésimo', 'bilionésimo']
 | 
			
		||||
 | 
			
		||||
ORDINAL_WORDS = set("""
 | 
			
		||||
primeiro segundo terceiro quarto quinto sexto sétimo oitavo nono décimo
 | 
			
		||||
vigésimo trigésimo quadragésimo quinquagésimo sexagésimo septuagésimo
 | 
			
		||||
octogésimo nonagésimo centésimo ducentésimo trecentésimo quadringentésimo
 | 
			
		||||
quingentésimo sexcentésimo septingentésimo octingentésimo nongentésimo
 | 
			
		||||
milésimo milionésimo bilionésimo
 | 
			
		||||
""".split())
 | 
			
		||||
 | 
			
		||||
def like_num(text):
 | 
			
		||||
    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
 | 
			
		||||
    if text in _num_words:
 | 
			
		||||
        return True
 | 
			
		||||
    return False
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
LEX_ATTRS = {
 | 
			
		||||
    LIKE_NUM: like_num
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user