
EN: rebol.com -
rebol.org -
rebol.net -
FR: Rebol Documentation Project -
forum RebelBB -
rebol-france.org -
forum codeur -
Analyse une série selon des règles.
parse input rules
input - La série à analyser (type: series)
rules - Les règles de grammaire (type: block string none)
/all - Analyse tous les caractères dont les espaces.
/case - Utilise des comparaisons sensibles à la casse.
Le parsing (analyse de texte) fournit un moyen pour reconnaître une série de caractères qui apparaissent dans une ordre particulier. Essentiellement, c’est une méthode pour retrouver et faire concorder des modèles. Le second argument est un bloc de grammaire à faire concorder.
Il y a aussi un mode d’analyse plus simple qui ne nécessite pas de règles, mais utilise une chaîne de caractères pour séparer la chaîne d’entrée.
Parse fonctionne aussi en conjonction avec les bitsets (charset) pour spécifier des groupes de caractères spéciaux.
Le résultat retourné par le mode simple est un bloc de valeurs. Pour les analyses basées sur des règles, parse retourne TRUE is l’analyse a atteint avec succès la fin de la chaîne d’entrée.
Le raffinement /ALL indique que tous les caractères dans une chaîne seront analysés. Autrement, les espaces, les tabulations, les sauts de lignes, et tous les autres caractères non-imprimables seront traités comme des espaces.
Le raffinement /CASE spécifie qu’une chaîne doit être analysée en tenant compte de la casse.
print parse "divide on spaces" none divide on spaces
print parse "Harry Haiku, 264 River Rd., Ukiah, 95482" "," Harry Haiku 264 River Rd. Ukiah 95482
page: read http://hq.rebol.net parse page [thru <title> copy title to </title>] print title Headquarters Intranet
digits: charset "0123456789" area-code: ["(" 3 digits ")"] phone-num: [3 digits "-" 4 digits] print parse "(707)467-8000" [[area-code | none] phone-num] true
trim - Retire les espaces d’une chaîne de caractères. Par défaut, retire à la tête et à la queue de la chaîne.