espressione regolare sostantivo implementata, ma non funziona

This commit is contained in:
nicola 2022-12-15 20:26:12 +01:00
parent 10953af337
commit 8d3c97097b
1 changed files with 26 additions and 0 deletions

View File

@ -132,6 +132,10 @@ $(document).ready(function() {
var parser = peg.generate(categoriegrammaticaliGrammar);
//console.log (parser.parse(categ).split(',').filter(prop => prop.length > 0).join())
return parser.parse(categ).split(',').filter(prop => prop.length > 0).join()
}else if(categ[0]=='s'){
var parser = peg.generate(categoriaGrammaticaleSostantivo);
//console.log (parser.parse(categ).split(',').filter(prop => prop.length > 0).join())
return parser.parse(categ).split(',').filter(prop => prop.length > 0).join()
}
//console.log(categ[0])
return categoriegrammaticali[categ[0]]
@ -576,8 +580,30 @@ _ "whitespace"= " "*
`
var categoriaGrammaticaleSostantivo = `
Expression = head:(Filtro){return 'Sostantivo,'+head.join()}
Filtro= fhead:("s")? tail:( genereforma? declinazionesostantivo? generelemma?
numersingolareplurale? locuzione?){return tail}
declinazionesostantivo= [1|2|3]? {switch(parseInt(text())){
case(1): return ' Prima declinazione';
case(2): return ' Seconda declinazione';
case(3): return ' Terza declinazione'}}
genereforma=[m|f]? {if (text()=='m') return ' maschile'; else if (text()=='f') return ' femminile';}
generelemma=[m|f]? {if (text()=='m') return ' maschile'; else if (text()=='f') return ' femminile';}
numersingolareplurale=[s|p]? {if (text()=='s') return ' numero singolare'; else if (text()=='p') return ' numero plurale';}
locuzione="Iv" {return('In Locuzione verbo');}
Integer "integer"
= _ [0-9]+ { return parseInt(text(), 10); }
_ "whitespace"= " "*
`
});