Comment remplacer du texte dans une sélection?


124

Je viens de commencer à utiliser Sublime Text 2, venant d'emacs.

J'ai une région de texte sélectionnée. Dans cette région, j'aimerais remplacer toutes les instances de texte de «0» par «255».

Comment faire ce type de remplacement de texte?

Réponses:


212

Cela m'a frustré, et aucune des réponses ci-dessus ne m'a vraiment donné ce que je voulais. J'ai finalement trouvé la réponse que je cherchais, sur un mac si vous le faites + option+ Fcela fera apparaître une barre Rechercher-Remplacer en bas de votre éditeur qui est locale au fichier que vous avez ouvert.

Il existe une option d'icône qui, lorsqu'elle est survolée, indique "Dans la sélection" que vous pouvez sélectionner pour rechercher et remplacer dans une sélection. J'ai indiqué l'icône correcte dans la capture d'écran ci-dessous.

entrez la description de l'image ici

Appuyez sur Remplacer tout, et voilà, toutes les instances de '0'seront remplacées par '255'.

Remarque: cette fonctionnalité est UNIQUEMENT disponible lorsque vous utilisez + option+ F.

Il n'apparaît PAS lorsque vous utilisez + shift+ F.

Remarque: cela remplacera toutes les instances de '0'avec '255'. Si vous souhaitez remplacer 0(sans les guillemets) par 255, alors mettez simplement 0(sans guillemets) et 255dans les champs Find What:et Replace With:respectivement.

Remarque:

optionkey est également étiquetée comme altclé.

key est également étiquetée comme commandclé.


2
Merci pour cette réponse! Le graphique aide aussi. J'avais pensé qu'il n'y avait que le command+shift+Fdialogue. Je n'avais aucune idée qu'il y en avait un autre.
Joseph Marikle

2
C'est la seule réponse qui répond réellement à la question: comment remplacer du texte dans une sélection .
ericsoco

7
Ctrl+Hsur GNU / Linux, ou menu Find>Replace...
cbliard

OUI @CBLIARD Ctrl + H A FAIT LE TRAVAIL POUR UBUNTU MERCI
zee

15
sur Windows OSson Ctrl+Hou menu Find > Replace..., semble être le même que pour Linux (voir le commentaire de @cbliard)
Adrien Be

36

Sur un Mac, vous pouvez sélectionner le texte que vous recherchez, puis appuyez sur: cmd+ ctrl+G

Cela sélectionnera chaque instance de votre texte sélectionné dans le même document. Si vous commencez à taper pour remplacer votre texte original en surbrillance, vous remplacerez toutes les autres occurrences en même temps.


6
Je vous remercie! Ceci est exactement ce que je cherchais.
Kopty

Cela ne fonctionne pas correctement. Dès que vous appuyez sur CMD-Ctrl-G, toutes les autres sous-chaînes qui correspondent à votre texte sélectionné sont également sélectionnées et sont ensuite modifiées à mesure que vous modifiez.
David

@David. Vous venez de décrire le même comportement que moi?
Simon Wilder

27

Certaines des réponses ici n'ont pas vraiment aidé.

Les gens vous montrent comment trouver des choses, mais maintenant comment les remplacer.

Je viens de regarder, et il semble que c'est Ctrl+ Hpour remplacer, puis vous obtenez la boîte de dialogue de recherche ainsi qu'une boîte de dialogue de remplacement. Cela a fonctionné pour moi.


Cela ne fonctionnera pas pour les utilisateurs Mac. Comme, Ctrl + H cache sublime sous Mac.
Vineet Jain

Je suis également un utilisateur Mac. C'est cmd+ Hpour cacher, non ctrl, même si cela étant dit, j'utilise Atom au lieu de sublime maintenant et le raccourci pour remplacer est alt+cmd + fdonc les choses peuvent changer
Adam K Dean

17

ST2 a une fonction pour changer plusieurs sélections à la fois.

  1. Double-cliquez sur la première instance de 0 que vous souhaitez modifier.
  2. Appuyez sur la touche Rechercher-> Ajout rapide suivant * pour sélectionner l'instance suivante de 0, et répétez jusqu'à ce que vous ayez sélectionné toutes les instances de 0 que vous souhaitez modifier.
    Si cette méthode sélectionne une instance que vous souhaitez ignorer, appuyez sur la touche Find-> Quick Skip Next .
  3. Vérifiez que les multiples champs en surbrillance correspondent à ce que vous souhaitez remplacer. Ensuite, tapez «255» et il devrait modifier toutes les instances sélectionnées simultanément.

* Regardez le menu Rechercher dans la barre de menus pour trouver la touche de raccourci appropriée pour votre système. Pour Windows vanilla, le menu vous indique que Find -> Quick Add Next est Ctrl+ Det Find -> Quick Skip Next est Ctrl+K , Ctrl+ D.


1
Oui, double-cliquez simplement sur n'importe quel mot et toutes les autres instances seront légèrement surlignées et commencez à appuyer sur Commande + D et il commencera à mettre en évidence les autres occurrences, puis vous pouvez simplement commencer à taper et cela remplacera le texte dans toutes les zones sélectionnées.
WallMobile

12

Je sais que cela a été répondu à plusieurs reprises, et tout est correct, mais je pensais que j'en ajouterais une autre:

Similaire à la méthode Ctrl- Dpour sélectionner des occurrences individuelles de la sélection actuelle, vous pouvez sélectionner toutes les occurrences dans le fichier avec Alt+ F3lorsque vous utilisez Windows ou Linux ( CMD+ CTRL+G dans le monde Mac).

Ceci est utile pour les changements de masse.


9

Tout d'abord, sélectionnez la partie du texte contenant les bits que vous souhaitez modifier. Sous Windows (désolé), c'est Ctrl+ Hou Find > Replace...Cela ouvre les cases Rechercher / Remplacer au bas du fichier. Entrez vos coordonnées puis cliquez sur Replace All(ou Ctrl+ Alt+ Enter)


6

1) Ctrl + F(ou Cmd + Fsur un Mac);
2) Entrez la chaîne que vous souhaitez trouver sur l'entrée en bas de la fenêtre.
3) Appuyez sur "Rechercher tout";

Toutes les apparences sont maintenant sélectionnées. Fais ce que tu veux.

De côté

Il y a un tas d'options à gauche de l'entrée qui s'ouvre Ctrl + F. Il y en a un qui dit quelque chose comme "Rechercher dans le texte sélectionné". Sélectionnez un tas de texte, cochez cette option et répétez les mêmes étapes ci-dessus à partir de 2). Désormais, seules les correspondances appartenant à cette sélection sont sélectionnées.


complications: j'utilise Linux, et j'utilise les raccourcis clavier emacs pour ST2. Ainsi, CTRL-F déplace simplement le curseur vers l'avant. En outre, je me demande spécifiquement s'il existe un moyen de remplacer toutes les instances d'une chaîne cible qui existent uniquement dans une sélection.
user1419762

Voir mon aparté pour remplacer uniquement dans une sélection. Maintenant à propos de Linux ... Je ne peux pas vraiment vous aider car je ne l'ai utilisé que sur Mac et Windows.
banzomaikaka

4

Vous pouvez utiliser ctrl+ Fpour trouver le texte.
ctrl+ hpour saisir le texte de remplacement. Puis ctrl+ shift+h pour remplacer le texte actuellement sélectionné et passer au texte correspondant suivant.

Ceci est pour Windows. Mais vous pouvez également archiver mac pour lequel vous voudrez peut-être vérifier les raccourcis clavier sous Préférences.



3
  1. Sélectionnez l'élément que vous souhaitez remplacer (double-cliquez dessus, ou Ctrl- Fpour le trouver) ...

  2. Ensuite, faites un ( Ctrl- Apple- G) sur Mac (aka. "Quick Find All"), pour mettre en évidence toutes les occurrences de la chaîne à la fois.

  3. Maintenant, tapez simplement votre texte de remplacement directement ... Toutes les occurrences de sélection seront remplacées au fur et à mesure que vous tapez (comme si votre curseur était à plusieurs endroits à la fois!)

Très utile...


2

Comme l'a déclaré @JOPLOmacedo, ctrl+ Fest ce dont vous avez besoin, mais si vous ne pouvez pas utiliser ce raccourci, vous pouvez enregistrer le menu:

  • Rechercher -> Rechercher.

    Et voila.
    Vous pouvez également définir une combinaison de touches personnalisée pour la recherche dans:

  • Préférences -> Liaisons de touches - Utilisateur

    Comme votre demande de sélection uniquement demande, il y a un bouton juste à côté du champ de recherche où vous pouvez opter pour "dans la sélection" .

  • En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
    Licensed under cc by-sa 3.0 with attribution required.