У меня есть файл input.txt в следующем формате:выборочно очистить содержимое файла PERL
DP_00296.1: 1-2, 72- 82
DP_00575.1: 63 -68, 206 - 208
DP_00389.1: 486-, 493-499, 529- 544
Я хочу, чтобы очистить некоторые форматы, как: я) очистить пространство (ы), которые могли бы представить до или после "-" б) если "-" не следует любое количество, удалить, что "-"
Для вышеприведенного input.txt, я хочу окончательный output.txt быть как:
DP_00296.1: 1-2, 72-82
DP_00575.1: 63-68, 206-208
DP_00389.1: 486, 493-499, 529-544
пожалуйста предложить код perl (предпочтительно один лайнер), который может выполнять работу за один раз вместо замены в regex два раза?
ps: Мои извинения за мой подход @ zdim и @ Jim Garrison .. на самом деле я ищу регулярное выражение, с которым мне удобно. Вот что я Нч пробовал:
#!/usr/bin/perl
local $/=undef;
open(FILE, "input.txt") || die ("Error\n");
$string = <FILE>;
$string =~ s/\s//g;
print "$string";
Благодарности
_ «Пожалуйста, предложите код perl (желательно один вкладыш), который может выполнять работу» _ - Извините, это не так, как работает StackOverflow. Вы, как ожидается, попытаетесь решить проблему. Если вы столкнулись с трудностями, напишите, что вы написали, и объясните, что не работает. –
_Пожалуйста, покажите нам, что вы делаете. Тогда все изменилось. – zdim
@zdim .. Я отредактировал свой вопрос –