J'ai des chaînes à associer via RegEx. Nous avons une application Java qui lit la regex à partir d'un fichier de configuration et prend deux groupes de chaînes, dont le nombre est spécifié dans la même configuration.RegEx pour correspondre à un modèle et exclure une partie de la chaîne
E.g.
CustomAction.523274ca945f.dialogLabel=Executing Custom Code...
seront jumelés à
(?m)^(?!#)\s*(\S*)\s*=\s*(\S*.*)
Ce que je dois est de choisir le premier groupe « CustomAction.523274ca945f.dialogLabel
» et exclure la chaîne aléatoire dans le milieu si je me retrouve avec quelque chose comme « CustomAction.dialogLabel
» ou " CustomAction..dialogLabel
"Eh bien toute autre combinaison, mais la chaîne aléatoire.
Je n'ai pas la source pour l'application Java que j'utilise. Ceci est une application pour laquelle je peux créer un fichier de configuration dans lequel je précise un motif et deux groupes et les app prend
pattern: (?m)^(?!#)\\s*([^.=\\s]*)\\.(?:[^.=\\s]*\\.)?([^.=\\s]*)\\s*=\\s*(.*?)\\s*$ key_group: 1 value_group: 2
Je ne peux spécifier un groupe par clé et une par valeur. Selon ce modèle, l'application choisit key_group comme clé et value_group comme valeur.
Je ne veux pas la poubelle au milieu car c'est aléatoire cela change la clé à chaque fois.
Salut, j'ai besoin du résultat être premier et troisième groupe concaténé pas dans différents groupes. Dans une application que j'ai, je peux spécifier deux groupes seulement, un pour la clé et un pour la valeur. – rojanu
Ensuite, je vais changer ma réponse à "pas possible" (voir edit) –