Visual Studio найти и заменить - Добавить возврат каретки, ИЛИ Новая строка

В случае следующей строки, подлежащей анализу.

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

Я хочу заменить ~~? на возврат каретки

Замена с помощью \n просто добавляет строку "\n"

Я уверен, что это можно сделать?

Спасибо

Ответ 1

Убедитесь, что в диалоговом окне "Найти и заменить" выбран "Использовать: Регулярные выражения":

Find/Replace Dialog Use Regular expressions

Обратите внимание, что для Visual Studio 2010 это не работает в Visual Studio Productivity Power Tools "Быстрый поиск" (с момента обновление за июль 2011 года); вместо этого вам нужно будет использовать полный диалог поиска и замены (используйте Ctrl + Shift + H или Edit → Find and Replace → Replace in Files) и измените область на "Текущий документ".

Ответ 2

Вы также можете попробовать \x0d\x0a в поле "Заменить на" с помощью флажка "Использовать выражение regulare", чтобы получить возврат каретки + линию с помощью Visual Studio Find/Replace. Использование \n (строка) совпадает с\x0a

Ответ 3

Если вы установите флаг "Использовать регулярные выражения", тогда \n будет переведено. Но имейте в виду, что вам придется изменить ваш поисковый запрос для дружественного регулярного выражения. В вашем случае это должно быть экранировано, как это "\ ~\~ \?" (без кавычек).

Ответ 4

Если вы хотите избежать проблем с экранированием специальных символов в строке поиска и замены при использовании регулярных выражений, выполните следующие действия:

  • Найдите исходную строку и замените ее на "UniqueString42" с помощью регулярных выражений off.
  • Найдите "UniqueString42" и замените его "UniqueString42\nUniqueString1337", с регулярными выражениями на
  • Найдите "UniqueString42" и замените его первой строкой вашей замены (часто вашей исходной строкой), с регулярными выражениями выкл.
  • Найдите "UniqueString42" и замените его на вторую строку вашей замены, с регулярными выражениями выкл.

Обратите внимание, что даже если вы хотите вручную сопоставлять совпадения для первого поиска и замены, вы можете безопасно использовать "заменить все" для трех последних шагов.

Пример

Например, если вы хотите заменить это:

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

с этим:

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

Вы выполнили следующие замены:

  • public IFoo SomeField { get { return this.SomeField; } }XOXOXOXO (regex off).
  • XOXOXOXOXOXOXOXO\nHUHUHUHU (regex on).
  • XOXOXOXOpublic IFoo Foo { get { return this.MyFoo; } } (regex off).
  • HUHUHUHUpublic IFoo Bar { get { return this.MyBar; } } (regex off).