Найти и заменить алгоритм - PullRequest
       3

Найти и заменить алгоритм

1 голос
/ 10 сентября 2010

У меня есть несколько текстовых файлов, которые содержат

<img width="100" или <img width="1400" или ....

Как я могу заменить все вышеперечисленное на следующее, поскольку ширина изображения нестатический?

<img width="200"

1 Ответ

1 голос
/ 10 сентября 2010

Для решения на основе регулярных выражений вы можете использовать это:

string path = "input.html";
string s = File.ReadAllText(path);
s = Regex.Replace(s, @"<img width=""\d+""", @"<img width=""200""");
File.WriteAllText(path, s);

Это будет работать, если ваши файлы из надежного источника в формате, который вы контролируете.Если нет, и это HTML, вы можете посмотреть на HTML-анализатор, такой как HTML Agility Pack .

Если файлы слишком велики для чтения в память, возможно, вы захотите обработатьподавать по одной строке за раз.

Иногда полезно записать во временный файл и удалить исходный файл только в том случае, если вы уверены, что запись прошла успешно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...