Rechercher et Remplacer-Ajouter un retour chariot ou un retour à la ligne

Dans le cas de la chaîne suivante à analyser.

ford mustang,10,blue~~?bugatti veyron,13,black

Je veux remplacer les ~~? avec carriage return

Remplacer par n ajoute simplement la chaîne "n"

Comment cela peut-il être fait?

154
demandé sur Alexander Abakumov 2010-12-02 18:07:05

5 réponses

Assurez-vous que "Utiliser: expressions régulières" est sélectionné dans la boîte de dialogue Rechercher et remplacer:

Boîte de dialogue Rechercher / Remplacer utiliser des expressions régulières

Notez que pour Visual Studio 2010, cela ne fonctionne pas dans l'extensionVisual Studio Productivity Power Tools ' Quick Find ' (à partir de la mise à jour de juillet 2011); à la place, vous devrez utiliser la boîte de dialogue Rechercher et remplacer complète (utilisez Ctrl+Maj+H, ou modifier - > rechercher et remplacer - > remplacer dans les fichiers), et

231
répondu Martin 2014-09-15 18:35:52

Vous pouvez également essayer \x0d\x0a dans la case" Remplacer par "avec la case" Utiliser l'Expression régulière " cochée pour obtenir le retour chariot + le saut de ligne en utilisant Visual Studio Find / Replace. L'utilisation de \n (saut de ligne) est identique à \x0a

26
répondu Dean 2011-04-27 16:55:31

Si vous définissez l'indicateur "utiliser des expressions régulières", \n sera traduit. Mais gardez à l'esprit que vous devrez modifier votre terme de recherche pour être convivial regexp. Dans votre cas, il devrait être échappé, comme cette "\~\~\?"(sans les guillemets).

12
répondu detunized 2010-12-02 15:11:59

Si vous voulez éviter les tracas d'échapper les caractères spéciaux dans votre chaîne de recherche et de remplacement lorsque vous utilisez des expressions régulières, procédez comme suit:

  1. Recherchez votre chaîne d'origine et remplacez-la par "UniqueString42", avec des expressions régulières off.
  2. recherchez "UniqueString42" et remplacez-le par "uniquestring42\nUniqueString1337", avec des expressions régulières sur
  3. recherchez "UniqueString42" et remplacez-le par la première ligne de votre remplacement (souvent votre chaîne d'origine), avec des expressions régulières off.
  4. recherchez "UniqueString42" et remplacez-le par la deuxième ligne de votre remplacement, avec des expressions régulières off .

Notez que même si vous voulez manuellement Pich correspond pour la première recherche et remplacer, vous pouvez utiliser en toute sécurité "remplacer tout" pour les trois dernières étapes.

Exemple

Par exemple, si vous souhaitez remplacer ce:

public IFoo SomeField { get { return this.SomeField; } }

Avec ça:

public IFoo Foo { get { return this.MyFoo; } }
public IBar Bar { get { return this.MyBar; } }

Vous feriez les substitutions suivantes:

  1. public IFoo SomeField { get { return this.SomeField; } }XOXOXOXO (regex off).
  2. XOXOXOXOXOXOXOXO\nHUHUHUHU (regex sur).
  3. XOXOXOXOpublic IFoo Foo { get { return this.MyFoo; } } (regex off).
  4. HUHUHUHUpublic IFoo Bar { get { return this.MyBar; } } (regex off).
9
répondu Georges Dupéron 2013-06-25 17:21:23

Vous pouvez utiliser Recherche multiligne et remplacer dans Visual Studio macro qui fournit une belle interface graphique pour la tâche.

entrez la description de l'image ici

5
répondu Peter Macej 2016-11-11 03:21:47