Bonjour,
Dans le cadre d'une procédure d'automatisation de data cleansing, je cherche à supprimé tous les accents d'une variable texte : txt_incident . Je souhaite utilisé la fonction prxchange mais je suis novice en langage pearl et je n'arrive pas à construire l'expression régulière dont j'ai besoin
en gros, j'ai une première table ("TABLETEXTMINING1") récapitulant les caractères à remplacer et leur caractère de remplacement:
unit HEX Base Fin regex regex2
1 81 ü u s/x81/u/ s/ü/u/
2 82 é e s/x82/e/ s/é/e/
1 83 â a s/x83/a/ s/â/a/
2 84 ä a s/x84/a/ s/ä/a/
1 85 à a s/x85/a/ s/à/a/
2 86 å a s/x86/a/ s/å/a/
1 87 ç c s/x87/c/ s/ç/c/
2 88 ê e s/x88/e/ s/ê/e/
1 89 ë e s/x89/e/ s/ë/e/
2 8A è e s/x8A/e/ s/è/e/
1 8B ï i s/x8B/i/ s/ï/i/
2 8C î i s/x8C/i/ s/î/i/
1 8D ì i s/x8D/i/ s/ì/i/
2 91 æ ae s/x91/ae/ s/æ/ae/
1 94 ö o s/x94/o/ s/ö/o/
2 95 ò o s/x95/o/ s/ò/o/
1 96 û u s/x96/u/ s/û/u/
2 97 ù u s/x97/u/ s/ù/u/
1 98 ÿ y s/x98/y/ s/ÿ/y/
2 A0 á a s/xA0/a/ s/á/a/
1 A1 í i s/xA1/i/ s/í/i/
2 A2 ó o s/xA2/o/ s/ó/o/
et l'idée c'est que pour chaque observation de txt_incident tous les caractères listé dans la table TABLETEXTMINING1.base soit remplacé par leur caractère respectif dans TABLETEXTMINING1.fin
malheuresement la solution suivante ne marche pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 PROC SQL; CREATE TABLE blabla.QUERY_FOR_TABLETEXTMINING1_0000 AS SELECT t1.NUMINCIDENT, t1.DATINCIDENT_DETECT, t1.txt_incident, t1.inf comp incident, /* txt_incident_sans_accent */ (PRXCHANGE(t2.regex2,-1, t1.txt_incident)) AS txt_incident_sans_accent FROM blabla.CTRL_E_JUSTIFICATION_BASE t1, blabla.TABLETEXTMINING1 t2; QUIT;
Partager