web-dev-qa-db-fra.com

Rechercher et remplacer - Ajouter un retour chariot OR Newline

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

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

Je veux remplacer le ~~? par un carriage return

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

Comment cela peut-il être fait?

169
Mantisimo

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

Find/Replace Dialog Use Regular expressions

Notez que pour Visual Studio 2010, cela ne fonctionne pas dans l'extension outils de productivité de Visual Studio Productivity '"Recherche rapide" (à partir de la mise à jour de juillet 2011); au lieu de cela, vous devrez utiliser la boîte de dialogue Rechercher et remplacer (utilisez Ctrl + Maj + H, ou Édition -> Rechercher et remplacer -> Remplacer dans les fichiers) et modifiez l'étendue en "Document actuel".

255
Martin

Vous pouvez également essayer \x0d\x0a dans la case "Remplacer par" avec la case "Utiliser une expression régulière" cochée pour obtenir un retour chariot + un saut de ligne à l'aide de Visual Studio Rechercher/Remplacer. Utiliser \n (saut de ligne) est identique à \x0a

28
Dean

Si vous activez le drapeau "Utiliser les expressions régulières",\n sera traduit. Mais gardez à l’esprit que vous devrez modifier votre terme de recherche pour qu’il soit compatible avec les expressions rationnelles. Dans votre cas, il devrait être échappé comme ceci "\ ~\~ \?" (pas de guillemets).

13
detunized

Si vous souhaitez éviter d'avoir à échapper aux caractères spéciaux de votre chaîne de recherche et de remplacement lors de l'utilisation d'expressions régulières, procédez comme suit:

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

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

Exemple

Par exemple, si vous voulez remplacer ceci:

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 on).
  3. XOXOXOXOpublic IFoo Foo { get { return this.MyFoo; } } (regex off).
  4. HUHUHUHUpublic IFoo Bar { get { return this.MyBar; } } (regex off).
10
Georges Dupéron

Vous pouvez utiliser recherche multiligne et remplacement dans une macro Visual Studio , qui fournit l'interface graphique de Nice pour la tâche.

enter image description here

6
Peter Macej