2015-11-10 1 views
0

je besoin de deux regex pour ce qui suit aux cas:RegEx pour le remplacement de l'expression dynamique

1. remplacer cette

lr_start_transaction("001_0010_123-A1-a_text-or-numbers"); 

avec ce

lr_start_transaction(lr_eval_string("{scriptid}_0010_123-A1-a_text-or-numbers")); 

2. remplacer

lr_end_transaction("001_0010_123-A1-a_text-or-numbers",LR_AUTO); 

avec ce

lr_end_transaction(lr_eval_string("{scriptid}_0010_123-A1-a_text-or-numbers"),LR_AUTO); 

La partie entre les apostrophes est dynamique. J'utilise Notepad ++ pour l'édition du code.

Quelqu'un pourrait m'aider s'il vous plaît ???

+0

Bienvenue sur Stack Overflow. Nous nous attendons à ce que les questions incluent une tentative de résoudre le problème d'abord, car nous ne donnons pas de morceaux de code. S'il vous plaît pouvez-vous poster ce que vous avez essayé jusqu'à présent? Les gens sont alors beaucoup plus susceptibles d'aider. – EkcenierK

+0

Explication complémentaire: Je dois remplacer "lr_start_transaction (" ... ");" avec "lr_start_transaction (lr_eval_string (" {scriptid} _... "));" – Troste

+0

Désolé mais je suis vraiment mauvais en regex donc les choses que j'ai essayées ne sont pas vraiment utiles. – Troste

Répondre

0

Pouvez-vous rechercher juste pour voir DEMO

(\(".*?)(_.*") 

et le remplacer par:

transaction(lr_eval_string("{scripted}\2) 

Explication:

(\(".*?) // look for (" in a non-greedy way (capture in \1) 
(_.*") // look for an underscore up to the next quote (capture in \2) 


transaction(lr_eval_string("{scripted}\2) 
// replace text, put back the capture group 2, then a closing parenthesis 
+0

C'est ce que je fais actuellement mais je veux gagner du temps (et éviter les erreurs). C'est pourquoi je cherche une regex pour faire 1 remplacement au lieu de 2. La dernière partie est aussi différente ")), au lieu de"); – Troste

+0

Parfait: j'ai utilisé "lr_start_transaction (\ (". *?) (_. * ")" Et "lr_start_transaction \ (lr_eval_string \ (" {scripted} \ 2 \) "dans le bloc-notes et ça marche bien. Ajout de quelques signes d'évasion Merci beaucoup! – Troste