Visual Studio многострочный reg-exp для удаления дубликатов с помощью операторов - PullRequest
1 голос
/ 02 мая 2011

Мне нужно регулярное выражение для удаления дубликатов с помощью операторов.

using NS.SN.Services.Common;
using NS.SN.Data.BaseRegistry;
using NS.SN.Data.DataContracts.Registry;
using NS.SN.Services.Common; <-- this one must go
using NS.SN.Services.DataContracts;
using System;
using System.Collections.Generic;
using System.Transactions;
using CodeEnums = NS.SN.Data.DataContracts.Enums.CodeEnums;
using System.Linq;

Проблема в том, что этот reg-exp не работает, потому что ([.: B] * \ n) * соответствует только первому символу новой строки. Могу ли я исправить это reg-exp?

{: Ь * с помощью: bNS.SN.Services.Common; ([.: Ь] * \ п) *} с помощью: bNS.SN. \ Services \ Common;:. Б * \ п * +1007 *

1 Ответ

2 голосов
/ 02 мая 2011

Используйте это как "Найти что":

{:b*using:bNS\.SN\.Services\.Common;(.*\n)*}using:bNS\.SN\.Services\.Common;:b*\n

и это как "Заменить на":

\1

ОБНОВЛЕНИЕ:
Я полностьюпропущена точка внутри группы символов:
[.:b]* будет соответствовать точке или двоеточию или букве b, потому что она находится внутри класса символов!Вы имели в виду (.|:b)*, где :b является избыточным, потому что он содержится внутри «любого символа» (.), поэтому он просто должен быть .*.Смотрите обновленное регулярное выражение выше.

...