Ajouter du caractère à chaque numéro via Regex dans Notepad ++

10

J'ai une question très basique que je n'arrive pas à comprendre. J'ai un document texte comme celui-ci:

This is 5 a test!
This 3 is a test!
This is a 9 test!

et je veux que ça ressemble à ceci:

This is 5c a test!
This 3c is a test!
This is a 9c test!

Signifie que je veux ajouter un «c» à chaque numéro que je trouve. J'ai essayé ceci:

Find what: [0-9]+]
Replace with: $1c
Search Mode: Regular expression

mais je fais évidemment quelque chose de mal parce que cela ne fonctionne pas. De l'aide serait appréciée. Je vous remercie!

user3877230
la source
3
Juste par curiosité: pourquoi avez-vous essayé [0-9]+]avec ces supports étranges inégalés?
Heinzi
2
@Heinzi Paris c'est une faute de frappe dans la question, étant donné la proximité +, ]et Entersur de nombreux claviers.
Courses de légèreté en orbite

Réponses:

26

Vous avez presque raison.

Vous voulez rechercher ([0-9]+)
et remplacer cela par$1c

Vous utilisez ( )pour créer un groupe de capture, donc $ 1 fonctionne.

Alternativement, vous pouvez remplacer par à la $0cplace, alors vous n'avez pas besoin d'utiliser un groupe de capture.

LPChip
la source
2
Cela fonctionne parfaitement bien. Merci beaucoup;)
user3877230
Juste curieux de savoir s'il y a une différence dans ce modèle et que vous recherchez \d+?
BruceWayne
2
@BruceWayne Selon la saveur regex de yoru, \dpeut correspondre aux chiffres Unicode des autres scripts . Notez que ce n'est pas le cas pour PCRE, qui est apparemment ce que Notepad ++ utilise. Dans tous les cas, je préfère généralement \dsi je veux des chiffres numériques, mais [0-9]si je veux explicitement ces caractères (par exemple, lorsque je gratte un format défini limité aux caractères ASCII).
Bob
En effet, \ d aurait tout aussi bien fonctionné. J'ai conservé la syntaxe [0-9] car OP a déjà essayé cela, et l'autre réponse utilise \ d.
LPChip
13
  • Ctrl+H
  • Trouver quoi: \d+
  • Remplacer par: $0c
  • check Wrap around
  • check Expression régulière
  • Replace all

Résultat pour l'exemple donné:

This is 5c a test!
This 3c is a test!
This is a 9c test!
Toto
la source
Que fait le bouclage?
Ooker