Récupérer des champs à remplir depuis un fichier texte

dino34 Messages postés 32 Date d'inscription jeudi 6 janvier 2011 Statut Membre Dernière intervention 3 novembre 2023 - 26 juil. 2019 à 22:20
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 - 24 août 2019 à 15:33
Bonjour:

Je cherche à récupérer des champs à remplir dans textarea depuis un fichier texte.

Les données entre bloc texte sur plusieurs lignes (entre "DATA") sont variables.

Note: INFO varient entre 10 jusqu’à 20 à partir du cinquième ligne

Exemple :
INFO-10-0 jusqu’à INFO-10-20( voir fichier joint)

Le fichier texte est le suivant :




j'ai utilisé le code suivant mais il me donne seulement groupe 1 et 2 de chaque nouvel ligne de DATA



try (Scanner sc = new Scanner(new File("C:\\text.txt"))) {
sc.useDelimiter("DATA");
String z = "\\s+(\\S+)";
Pattern pattern = Pattern.compile(z+z+z+z+z+z+z+z+z+z+z+z+z+z+z);
while (sc.hasNext()) {
Matcher matcher = pattern.matcher(sc.next());
if (matcher.find()) {

textArea.append("LEVELINFO=DATA=" + matcher.group(1) + " &&NAME= " + matcher.group(2) +"
&&VERAT2= matcher.group(8) +"&&CMD4= matcher.group(14) +";"+"\n");
textArea.append(""+"\n");




je cherche a avoir ceci :

la premiere ligne de DATA

LEVELINFO=DATA=INFO-10&&NAME=EQUIP&&VERAT2=v22&&CMD4= BYTE

le deuxième ligne de DATA

LEVELINFO=DATA=MAC1=$1&&MAC2=IPARP

LE troixième ligne de data :

LEVELINFO=DATA=INFO-10


la quatrime ligne de DATa

LEVELINFO=DATA=INFO-10&&ADRS=1&&4

la cinqieme ligne de data:

LEVELINFO=DATA=INFO-10-0&&NAMEPLAT=EQUIPW&&TI =0&&VAL1=10&&VAL2=11&&13

le 20 ieme ligne de DATA

LEVELINFO=DATA=INFO-10-20&&NAMEPLAT=EQUIPZ&&TI =0&&VAL1=40&&VAL2=50&&20

le 21 ieme ligne de DATA

LEVELINFO=DATA=MAC1=$100&&MAC2=IPARP200


Comment faire un break dans chaque nouvel ligne dans DATA dans l'expression régulière ?

Merci pour support et suggestion .

35 réponses

dino34 Messages postés 32 Date d'inscription jeudi 6 janvier 2011 Statut Membre Dernière intervention 3 novembre 2023
Modifié le 4 août 2019 à 18:12
salut:

esct ce qu'ont peux mettre plusieur pattern ?, là je bloque parceque le code que j'ai mis me donne seulement groupe1 &2 de chaque ligne .


try (Scanner sc = new Scanner(new File("C:\\text.txt"))) {
        sc.useDelimiter("DATA");
        String z = "\\s+(\\S+)";
        Pattern pattern = Pattern.compile(z+z+z+z+z+z+z+z+z+z+z+z+z+z+z);
        while (sc.hasNext()) {
            Matcher matcher = pattern.matcher(sc.next());
            if (matcher.find()) {                  
          
        textArea.append("LEVELINFO=DATA=" + matcher.group(1) + " &&NAME=  " + matcher.group(2) +" 
&&VERAT2= matcher.group(8) +"&&CMD4= matcher.group(14) +";"+"\n"); 
       textArea.append(""+"\n");


merci pour votre et support
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
31 juil. 2019 à 20:12
Bonjour

je ne code pas en Java, mais les regex j'aime bien.

Pour que je puisse essayer, il faudrait que je copie colle ton fichier texte, mets le entre balises de code sinon les tabulations et les espaces seront supprimés par le site.

PS: pour ton code il faut préciser que c'est du java pour que l'affichage soit correct, voir ici
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

PS2: est ce que les regex en Java accepter les groupes avec un nom, c'est plus simple pour récupérer les captures
0
dino34 Messages postés 32 Date d'inscription jeudi 6 janvier 2011 Statut Membre Dernière intervention 3 novembre 2023
1 août 2019 à 12:10
Salut:

merci pour votre réponse , voici ci-dessous le fichier texte :

le mot DATA ce répète dans chaque début de bloc . j'ai utilisé dans le délimiteur .

je cherche à utilisé expression régulière dans java eclipse.



DATA NAME MAC1 MAC2
INFO-0 EQUIP Q10 Q13

VL VER VERAT2 MAP
V22 V22 SELF100

CMD1 CMD2 CMD3 CMD4 CMD5
NO 44 FAL BYTE



DATA MAC1 MAC2
INFOG-0 $1 IPARP

DLD
FG
DATA
INFOT-0 NO INFO


DATA ADRS
INFOC-0 1 2
3 4


DATA NAMEPLAT GR NI SI TI VAL1 WC
INFOP-0-0 EQUIPW ONE 0 NC 0 10

PL VER2 VER VAL2
11
12
13





0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
1 août 2019 à 14:30
J’ai l’impression que le formatage n’a pas été conservé comme il faut.
Peux tu vérifier et si c’est pas bon mettre un fichier sur un serveur de transfert genre cjoint.com

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dino34 Messages postés 32 Date d'inscription jeudi 6 janvier 2011 Statut Membre Dernière intervention 3 novembre 2023
2 août 2019 à 19:47
salut:

veuillez trouver le lien cité ci-dessous:

https://www.cjoint.com/c/IHcrTh8XAD7.

merci

--
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
3 août 2019 à 08:58
Bonjour
Pour chaque type d’info le formatage est très différent.
Il est sans doute possible de trouver une regex qui va chercher toutes tes infos d’un coup, mais elle va être très compliquée et peut-être même longue à exécuter.
Je te propose une regex par « ligne »

Voila pour la première
DATA\s+NAME.*\nINFO-0\s+(?<name>[$\w]+).*\n.*\n.*VERAT2.*\n\s+\w+\s+(?<verat2>\w+).*\n.*\n.*CMD4.*\n(?:\s+\w+){3}\s+(?<cmd4>\w+)


Regarde ce site, dans l’onglet Table, les informations que tu cherches sont dans les groupes « name », « verat2 » et « cmd4 »
http://regexstorm.net/tester?p=DATA%5cs%2bNAME.*%5cnINFO-0%5cs%2b%28%3f%3cname%3e%5b%24%5cw%5d%2b%29.*%5cn.*%5cn.*VERAT2.*%5cn%5cs%2b%5cw%2b%5cs%2b%28%3f%3cverat2%3e%5cw%2b%29.*%5cn.*%5cn.*CMD4.*%5cn%28%3f%3a%5cs%2b%5cw%2b%29%7b3%7d%5cs%2b%28%3f%3ccmd4%3e%5cw%2b%29&i=DATA++++++++++++++NAME++++++++++++++++++++++++++++++++++MAC1++MAC2%0d%0aINFO-0++++++++++++EQUIP+++++++++++++++++++++++++++++++++Q10++++Q13%0d%0a%0d%0a++++++++++++++++++VL++++++++++++++++++++VER+++++VERAT2+++++MAP%0d%0a++++++++++++++++++++++++++++++++++++++++V22+++++V22+++++++SELF100%0d%0a%0d%0a++++++++++++++++++CMD1+CMD2+++++++CMD3+++++CMD4+++++CMD4++%0d%0a++++++++++++++++++NO++++44++++++++FAL++++++BYTE%0d%0a%0d%0a++++++++++++++++%0d%0a%0d%0aDATA+++++++++++++MAC1++++++MAC2%0d%0aINFOG-0+++++++++++%241+++++++IPARP%0d%0a%0d%0a+++++++++++++++++++++++++++DLD%0d%0a+++++++++++++++++++++++++++FG%0d%0aDATA+%0d%0aINFOT-0++++++++++NO+INFO%0d%0a%0d%0a%0d%0aDATA+++++++++++++++ADRS%0d%0aINFOC-0++++++++++++1++++2%0d%0a+++++++++++++++++++3++++4++%0d%0a++++++++++++++++++++%0d%0a%0d%0aDATA++++++++++++++NAMEPLAT++++++GR++++NI++++++SI+++++++TI+++++++VAL1+++++WC%0d%0aINFOP-0-0+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
3 août 2019 à 09:03
La seconde

INFOG-0\s+(?<mac1>[$\w]+)\s+(?<mac2>[$\w]+)


Les infos sont dans les groupes « mac1 » et « mac2 »
http://regexstorm.net/tester?p=INFOG-0%5cs%2b%28%3f%3cmac1%3e%5b%24%5cw%5d%2b%29%5cs%2b%28%3f%3cmac2%3e%5b%24%5cw%5d%2b%29&i=DATA++++++++++++++NAME++++++++++++++++++++++++++++++++++MAC1++MAC2%0d%0aINFO-0++++++++++++EQUIP+++++++++++++++++++++++++++++++++Q10++++Q13%0d%0a%0d%0a++++++++++++++++++VL++++++++++++++++++++VER+++++VERAT2+++++MAP%0d%0a++++++++++++++++++++++++++++++++++++++++V22+++++V22+++++++SELF100%0d%0a%0d%0a++++++++++++++++++CMD1+CMD2+++++++CMD3+++++CMD4+++++CMD4++%0d%0a++++++++++++++++++NO++++44++++++++FAL++++++BYTE%0d%0a%0d%0a++++++++++++++++%0d%0a%0d%0aDATA+++++++++++++MAC1++++++MAC2%0d%0aINFOG-0+++++++++++%241+++++++IPARP%0d%0a%0d%0a+++++++++++++++++++++++++++DLD%0d%0a+++++++++++++++++++++++++++FG%0d%0aDATA+%0d%0aINFOT-0++++++++++NO+INFO%0d%0a%0d%0a%0d%0aDATA+++++++++++++++ADRS%0d%0aINFOC-0++++++++++++1++++2%0d%0a+++++++++++++++++++3++++4++%0d%0a++++++++++++++++++++%0d%0a%0d%0aDATA++++++++++++++NAMEPLAT++++++GR++++NI++++++SI+++++++TI+++++++VAL1+++++WC%0d%0aINFOP-0-0+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
3 août 2019 à 09:23
Pour la 3eme ligne comme y’a pas de données dans ton exemple, je ne sais pas à quoi elles ressembleraient
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
3 août 2019 à 09:32
La 4eme
INFOC-0\s+(?<adrs1>\d+).*\n\s+\d+\s+(?<adrs2>\d+)


Les infos sont dans les groupes « adrs1 » et « adrs2 »
http://regexstorm.net/tester?p=INFOC-0%5cs%2b%28%3f%3cadrs1%3e%5cd%2b%29.*%5cn%5cs%2b%5cd%2b%5cs%2b%28%3f%3cadrs2%3e%5cd%2b%29&i=DATA++++++++++++++NAME++++++++++++++++++++++++++++++++++MAC1++MAC2%0d%0aINFO-0++++++++++++EQUIP+++++++++++++++++++++++++++++++++Q10++++Q13%0d%0a%0d%0a++++++++++++++++++VL++++++++++++++++++++VER+++++VERAT2+++++MAP%0d%0a++++++++++++++++++++++++++++++++++++++++V22+++++V22+++++++SELF100%0d%0a%0d%0a++++++++++++++++++CMD1+CMD2+++++++CMD3+++++CMD4+++++CMD4++%0d%0a++++++++++++++++++NO++++44++++++++FAL++++++BYTE%0d%0a%0d%0a++++++++++++++++%0d%0a%0d%0aDATA+++++++++++++MAC1++++++MAC2%0d%0aINFOG-0+++++++++++%241+++++++IPARP%0d%0a%0d%0a+++++++++++++++++++++++++++DLD%0d%0a+++++++++++++++++++++++++++FG%0d%0aDATA+%0d%0aINFOT-0++++++++++NO+INFO%0d%0a%0d%0a%0d%0aDATA+++++++++++++++ADRS%0d%0aINFOC-0++++++++++++1++++2%0d%0a+++++++++++++++++++3++++4++%0d%0a++++++++++++++++++++%0d%0a%0d%0aDATA++++++++++++++NAMEPLAT++++++GR++++NI++++++SI+++++++TI+++++++VAL1+++++WC%0d%0aINFOP-0-0+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
3 août 2019 à 09:57
Pour la dernière, j’ai copier collé plusieurs fois la ligne pour avoir de lignes de 0 à 10 et des lignes qui ne marchent pas
INFOP-0-(?:10|\d)\s+(?<namePlat>\w+)\s+(?:\w+\s+){3}(?<ti>\d+)\s+(?<val1>\d+).*\n.*\n.*\n.*(?<val21>\d+).*\n.*\n.*(?<val22>\d+)


Les données sont dans les groupes « val1 », « val21 » et « val22 »
http://regexstorm.net/tester?p=INFOP-0-%28%3f%3a10%7c%5cd%29%5cs%2b%28%3f%3cnamePlat%3e%5cw%2b%29%5cs%2b%28%3f%3a%5cw%2b%5cs%2b%29%7b3%7d%28%3f%3cti%3e%5cd%2b%29%5cs%2b%28%3f%3cval1%3e%5cd%2b%29.*%5cn.*%5cn.*%5cn.*%28%3f%3cval21%3e%5cd%2b%29.*%5cn.*%5cn.*%28%3f%3cval22%3e%5cd%2b%29&i=INFOP-0-0+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++11%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++12%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++13+++++++++++++++++++++++++++++++++++++++++++++++++++%0d%0aINFOP-0-10+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++11%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++12%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++13%0d%0aINFOP-0-11+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++11%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++12%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++13%0d%0aINFOP-0-6+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++11%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++12%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++13+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Le permalik étant limité en taille, tu n’as qu’un exemple ligne qui ne marche pas
0
dino34 Messages postés 32 Date d'inscription jeudi 6 janvier 2011 Statut Membre Dernière intervention 3 novembre 2023
4 août 2019 à 12:24
salut:

merci beaucoup pour votre support .

C’est la première fois que j'utilise les expressions régulière, je ne sais pas comment utilisé toutes les expressions régulière fournies dans mon cas.

merci beaucoup.

--
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
Modifié le 4 août 2019 à 12:59
Un tuto pour les regex en java

https://cyberzoide.developpez.com/tutoriels/java/regex/

Un complément avec les groupes nommés
https://askcodez.com/expression-reguliere-nomme-capturer-les-groupes-de-soutien-dans-java-7.html

Pour chaque regex que je t’ai proposée, j’ai mis un lien très long dans un encadré gris, tu copies/colles ce lien dans ton navigateur, tu regardes les captures surlignées dans le texte et les résultats des groupes dans l’onglet Table

0
salut Whismeril:

je cherche à modifier cette expression merci de me corrigé :

"(?<INFO->\\d{1,2}\\s)+(?<name>[$\\w]+).*"


je cherche à mettre INFO- comme nom de groupe dans l’expression régulière.

j'ai le message d'erreur suivant:

named capturing group is missing trailing '>'



merci
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
17 août 2019 à 18:38
Un nom de groupe doit être du texte, le - n'est pas accepté.
0
salut :

même avec les modifications apportées riens n'est affiché sur la console .

"(?<INFO>-\\d{1,2}\\s)+(?<name>[$\\w]+).*"


merci
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
17 août 2019 à 18:57
C’est quoi le texte d’entrée?
0
il est dans le lien en pièce jointe :

https://www.cjoint.com/c/IHcrTh8XAD7

"\\s+NAME.*" + "\\r?\\n"+ "(?<INFO>-\\d{1,2}\\s)+(?<name>[$\\w]+).*" + "\\r?\\n"


merci
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
17 août 2019 à 20:05
Tu confonds le nom du groupe et le texte à capturer.

Le nom du groupe c'est un peu comme une variable, dans laquelle sera stocké le texte capturé

En plus, plus haut, je t'ai montré qu'il n'était pas forcément nécessaire de capturer la ligne avant celle qui commence par INFO, et plus la capture est simple, plus la regex est simple, rapide et efficace

Le
\r?
ne sert à rien,
.*
l'englobe.

Enfin, tu as un
\s
et un
+
mal placés, il doivent être ensembles, en dehors de la parenthèses, c'est pas
"INFO-1 "
que tu cherches à capturer plusieurs fois, mais bien plusieurs espaces après
"INFO-1"


Donc en capturant les 2 lignes ça donne
\s+NAME.*\n(?<info>INFO-\d{1,2})\s+(?<name>[$\w]+).*

Ici exemple
http://regexstorm.net/tester?p=%5cs%2bNAME.*%5cn%28%3f%3cinfo%3eINFO-%5cd%7b1%2c2%7d%29%5cs%2b%28%3f%3cname%3e%5b%24%5cw%5d%2b%29.*&i=DATA++++++++++++++NAME++++++++++++++++++++++++++++++++++MAC1++MAC2%0d%0aINFO-0++++++++++++EQUIP+++++++++++++++++++++++++++++++++Q10++++Q13%0d%0a%0d%0a++++++++++++++++++VL++++++++++++++++++++VER+++++VERAT2+++++MAP%0d%0a++++++++++++++++++++++++++++++++++++++++V22+++++V22+++++++SELF100%0d%0a%0d%0a++++++++++++++++++CMD1+CMD2+++++++CMD3+++++CMD4+++++CMD4++%0d%0a++++++++++++++++++NO++++44++++++++FAL++++++BYTE%0d%0a%0d%0a++++++++++++++++%0d%0a%0d%0aDATA+++++++++++++MAC1++++++MAC2%0d%0aINFOG-0+++++++++++%241+++++++IPARP%0d%0a%0d%0a+++++++++++++++++++++++++++DLD%0d%0a+++++++++++++++++++++++++++FG%0d%0aDATA+%0d%0aINFOT-0++++++++++NO+INFO%0d%0a%0d%0a%0d%0aDATA+++++++++++++++ADRS%0d%0aINFOC-0++++++++++++1++++2%0d%0a+++++++++++++++++++3++++4++%0d%0a++++++++++++++++++++%0d%0a%0d%0aDATA++++++++++++++NAMEPLAT++++++GR++++NI++++++SI+++++++TI+++++++VAL1+++++WC%0d%0aINFOP-0-0+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++11%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++12%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++13

Et en ne capturant que ce qui est nécessaire
(?<info>INFO-\d{1,2})\s+(?<name>[$\w]+).*

http://regexstorm.net/tester?p=%28%3f%3cinfo%3eINFO-%5cd%7b1%2c2%7d%29%5cs%2b%28%3f%3cname%3e%5b%24%5cw%5d%2b%29.*&i=DATA++++++++++++++NAME++++++++++++++++++++++++++++++++++MAC1++MAC2%0d%0aINFO-0++++++++++++EQUIP+++++++++++++++++++++++++++++++++Q10++++Q13%0d%0a%0d%0a++++++++++++++++++VL++++++++++++++++++++VER+++++VERAT2+++++MAP%0d%0a++++++++++++++++++++++++++++++++++++++++V22+++++V22+++++++SELF100%0d%0a%0d%0a++++++++++++++++++CMD1+CMD2+++++++CMD3+++++CMD4+++++CMD4++%0d%0a++++++++++++++++++NO++++44++++++++FAL++++++BYTE%0d%0a%0d%0a++++++++++++++++%0d%0a%0d%0aDATA+++++++++++++MAC1++++++MAC2%0d%0aINFOG-0+++++++++++%241+++++++IPARP%0d%0a%0d%0a+++++++++++++++++++++++++++DLD%0d%0a+++++++++++++++++++++++++++FG%0d%0aDATA+%0d%0aINFOT-0++++++++++NO+INFO%0d%0a%0d%0a%0d%0aDATA+++++++++++++++ADRS%0d%0aINFOC-0++++++++++++1++++2%0d%0a+++++++++++++++++++3++++4++%0d%0a++++++++++++++++++++%0d%0a%0d%0aDATA++++++++++++++NAMEPLAT++++++GR++++NI++++++SI+++++++TI+++++++VAL1+++++WC%0d%0aINFOP-0-0+++++++++EQUIPW+++++++ONE++++0++++++++NC+++++++0+++++++++10%0d%0a%0d%0a++++++++++++++++++PL++++++++++VER2+++++++VER++++++++++++++++++++VAL2%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++11%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++12%0d%0a+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++13
0
salut:

quand je met (?<info>INFO-\d{1,2})\s+(?<name>[$\w]+).* dans mon code

il m'affiche le code d'erreur cité ci-dessous:

Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )

merci
0
Whismeril Messages postés 19040 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 9 mai 2024 656
17 août 2019 à 21:11
Oui, je t'ai donné la regex "finie", toi tu la construis avec une string dans Java, il te faut donc échappé les \ donc par exemple \s devient \\s.

Mais si moi je fais ça, l'exemple ne marche plus
0
Rejoignez-nous