Grammalecte  Check-in [e751b105e6]

Overview
Comment:[fr] conversion: regex rules -> graph rules
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | fr | rg
Files: files | file ages | folders
SHA3-256: e751b105e698e54008ee8110636d5f00b64ee2fb5fce842aca9f0e4b49a9502c
User & Date: olr on 2018-06-27 10:03:18
Other Links: branch diff | manifest | tags
Context
2018-06-27
15:10
[fr] conversion: regex rules -> graph rules check-in: ff4d49c27a user: olr tags: fr, rg
10:03
[fr] conversion: regex rules -> graph rules check-in: e751b105e6 user: olr tags: fr, rg
10:02
[core] gc engine: use expand for text processor too check-in: 816624027a user: olr tags: core, rg
Changes

Modified gc_lang/fr/rules.grx from [3025b450e4] to [6d27ed5554].

5699
5700
5701
5702
5703
5704
5705


5706
5707
5708
5709
5710
5711
5712
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714







+
+







    à toute heure de la nuit et du jour
    à tous crins
    à tous points de vue
    à toutes fins utiles
    à toutes jambes
    à tu et à toi
    à un moment donné
    à une   heure  [décente|tardive]
    à cette heure matinale
    à usage interne
    à visage découvert
    à visage humain
    à vive allure
    à voix [haute|basse]
    à vol d’ oiseau
    à vrai dire
6825
6826
6827
6828
6829
6830
6831
6832

6833
6834


6835

6836


6837

6838

6839

6840
6841
6842

6843
6844
6845
6846
6847


6848
6849
6850


6851
6852
6853
6854




6855
6856
6857
6858



6859
6860
6861




6862
6863
6864
6865
6866
6867
6868
6869
6870

6871
6872
6873
6874
6875
6876
6877
6827
6828
6829
6830
6831
6832
6833

6834


6835
6836

6837
6838
6839
6840
6841
6842

6843

6844
6845
6846

6847





6848
6849



6850
6851




6852
6853
6854
6855




6856
6857
6858
6859


6860
6861
6862
6863

6864




6865
6866

6867
6868
6869
6870
6871
6872
6873
6874







-
+
-
-
+
+
-
+

+
+

+
-
+
-
+


-
+
-
-
-
-
-
+
+
-
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+

-
-
+
+
+
+
-

-
-
-
-


-
+







__mot_composé_avec_là__
    ~-[lL][àÀ]$
        <<- morph(\1, ":[NAQ]", ":G", 0, -3) ~>> =\1[:-3]

TEST: cette femme-là {{étaient}} partout.



__simplification_des_nombres__
@@@@
@@@@END_GRAPH                                                                                      _
    [vingt|trente|quarante|cinquante|soixante|soixante-dix|septante|quatre-vingt|octante|huitante|quatre-vingt-dix|nonante] et [un|une|onze]
        <<- ~>> \1-et-\3||
@@@@
        <<- ~2:3>> *

    [deux|trois|quatre|cinq|six|sept|huit|neuf|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf]  cents  @:[NAQ].*:[pi]¬:(?:G|3p)
        <<- ~1:2>> ␣

    [deux|trois|quatre|cinq|six|sept|huit|neuf] ?cent¿ mille
# mot-là
    cent mille
#__[i](p_qqch_tiret_là)__        ({w1})(-là) @@0,$ <<- morphex(\1, ":[NAQ]", ":G") ~2>> *
        <<- ~>> ␣


# simplification des nombres
__purge_des_nombres__
__<i](p_10_qqch)__
    dix-(?:sept|huit|neuf) <<- ~>> dix
__[i](p_20_30_40_50_qqch)__
    (?:vingt|trente|quarante|cinquante)(-(?:deux|trois|quatre|cinq|six|sept|huit|neuf|et-un)| et un) @@$ <<- ~1>> *
__[i](p_60_qqch)__
    [les|des|ces|mes|tes|ses|nos|vos|leurs]  quelque  @:B   @:[NA].*:[pi]¬:(?:G|3p)
    [les|des|ces|mes|tes|ses|nos|vos|leurs]  quelque  ~\d+  @:[NA].*:[pi]¬:(?:G|3p)
    soixante-(?:d(?:eux|ix|ouze)|tr(?:ois|eize)|quat(?:re|orze)|cinq|six|sept|huit|neuf|quinze|seize| et (?:un|onze)|-et-(?:un|onze))
    <<- ~>> soixante
__[i](p_80_qqch)__
        <<- ~2:3>> *

    quatre-vingt-(?:un|d(?:eux|ix|ouze)|tr(?:ois|eize)|quat(?:re|orze)|cinq|six|sept|huit|neuf|onze|quinze|seize)
    <<- ~>> quatre-vingts
__[i](p_qqch_100)__
    ((?:d(?:eux|ouze)|tr(?:ois|eize)|quat(?:re|orze)|cinq|s(?:ix|seize)|sept|huit|neuf|onze|quinze) cents) +({w_2})  @@0,$
    [à|de|d’]  @:B  pour  cent
        <<- ~>> *


    <<- morphex(\2, ":[NAQ].*:[pi]", ":(?:G|3p)") ~1>> cent
__[i](p_qqch_1000)__
    (?:deux|trois|quatre|cinq|six|sept|huit|neuf|cent) (?:cent |)mille
    <<- ~>> mille
    [à|de|d’]  une  heure  ?[deux|trois|quatre|cinq|six|sept|huit|neuf|dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf|vingt|vingt-et-un|vingt-et-une|vingt-deux|vingt-trois|vingt-quatre|vingt-cinq|vingt-six|vingt-sept|vingt-huit|vingt-neuf|trente|trente-et-un|trente-et-une|trente-deux|trente-trois|trente-quatre|trente-cinq|trente-six|trente-sept|trente-huit|trente-neuf|quarante|quarante-et-un|quarante-et-une|quarante-deux|quarante-trois|quarante-quatre|quarante-cinq|quarante-six|quarante-sept|quarante-huit|quarante-neuf|cinquante|cinquante-et-un|cinquante-et-une|cinquante-deux|cinquante-trois|cinquante-quatre|cinquante-cinq|cinquante-six|cinquante-sept|cinquante-huit|cinquante-neuf]¿
    [à|de|d’]  [deux|trois|quatre|cinq|six|sept|huit|neuf|dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf|vingt|vingt-et-une|vingt-deux|vingt-trois|vingt-quatre]  heures  ?[deux|trois|quatre|cinq|six|sept|huit|neuf|dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf|vingt|vingt-et-un|vingt-et-une|vingt-deux|vingt-trois|vingt-quatre|vingt-cinq|vingt-six|vingt-sept|vingt-huit|vingt-neuf|trente|trente-et-un|trente-et-une|trente-deux|trente-trois|trente-quatre|trente-cinq|trente-six|trente-sept|trente-huit|trente-neuf|quarante|quarante-et-un|quarante-et-une|quarante-deux|quarante-trois|quarante-quatre|quarante-cinq|quarante-six|quarante-sept|quarante-huit|quarante-neuf|cinquante|cinquante-et-un|cinquante-et-une|cinquante-deux|cinquante-trois|cinquante-quatre|cinquante-cinq|cinquante-six|cinquante-sept|cinquante-huit|cinquante-neuf]¿
        <<- ~>> *

__[i](p_det_plur_nombre_nom)__
    (?:le(?:ur|)s|des|ses|ces|mes|tes|nos|vos) +((?:quelque +|)(?:d(?:eux|ix|ouze)|tr(?:ois|eize|ente)|qua(?:t(?:re(?:-vingts|)|orze)|rante)|cinq(?:uante|)|s(?:ix|eize|oixante)|sept|huit|neuf|onze|quinze|vingt|cent|mille|\d+)) +({w_2})  @@w,$

@@@@
@@@@END_GRAPH                                                                                      _
@@@@
    <<- morphex(\2, ":[NAQ].*:[pi]", ":(?:G|3p)") ~1>> *

__[i](p_une_heure)__
    (?:à |d(?:e +|’))une +heure(?: (?:d(?:eu|i)x|tr(?:ois|eize|ente)|qu(?:a(?:t(?:re|orze)|rante)|inze)|cinq(?:uante|)|s(?:ix|ept|eize)|huit|neuf|onze|douze|vingt|décente|(?:très |)tardive)|) <<- ~>> *
__[i](p_nombre_heure)__
    (?:à|de) (?:d(?:eu|i)x|tr(?:ois|eize)|qu(?:at(?:re|orze)|inze)|cinq|s(?:ix|ept|eize)|huit|neuf|onze|douze|vingt) +heures(?: (?:d(?:eu|i)x|tr(?:ois|eize|ente)|qu(?:a(?:t(?:re|orze)|rante)|inze)|cinq(?:uante|)|s(?:ix|ept|eize)|huit|neuf|onze|douze|vingt)|) <<- ~>> *

## Conditionnel
__[i](p_à_xxx_pour_cent)__          à ({w_2}) pour cent @@2 <<- morph(\1, ":B", False) ~>> *

__[i](p_au_moins)__                 (au moins) +({w_1}) @@0,$ <<- not morph(\2, ":[AQ].*:[me]:[si]", False) ~1>> *
__[i](p_au_hasard)__                au hasard <<- isEndOfNG() ~>> *
__[i](p_aussi_adv_que_possible)__   aussi ({w_2}) que (?:nécessaire|possible) @@6 <<- morph(\1, ":W", False) ~>> *
__[i](p_au_sens_adj_du_terme)__     au sens (?:le (?:plus|moins) |)({w_2}) du terme @@w <<- morph(\1, ":A.*:m:s", False) ~>> *
#__[i](p_aussi_xxx_que_ce_soit)__   aussi ({w_2}) que ce soit
__[i](p_nombre_de)__                (nombre) des? @@0 <<- morph(word(-1), ":(?:R|C[sc])", False, True) ~1>> *
__[i](p_à_xxx_reprises)__           à ({w_2}) reprises @@2 <<- morph(\1, ":B", False) or re.search("(?i)^(?:plusieurs|maintes)", \1) ~>> *