Regex: Как удалить лишние пробелы между строками в Perl

Я работаю над программой, которая принимает пользовательский ввод для двух имен файлов. К сожалению, программа может легко сломаться, если пользователь не следует заданному формату ввода. Я хочу написать код, который повышает его устойчивость к этим типам ошибок. Вы поймете, когда увидите мой код:

# Ask the user for the filename of the qseq file and barcode.txt file
print "Please enter the name of the qseq file and the barcode file separated by a comma:";
# user should enter filenames like this: sample1.qseq, barcode.txt

# remove the newline from the qseq filename
chomp ($filenames = <STDIN>);

# an empty array
my @filenames;

# remove the ',' and put the files into an array separated by spaces; indexes the files
push @filename, join(' ', split(',', $filenames))

# the qseq file
my $qseq_filename = shift @filenames;

# the barcode file.
my barcode = shift @filenames;

Очевидно, что при выполнении этого кода могут возникать ошибки, если пользователь вводит неправильный тип имени файла (файл .tab вместо .txt или .seq вместо .qseq). Мне нужен код, который может выполнять какую-то проверку, чтобы убедиться, что пользователь вводит соответствующий тип файла.

Другая ошибка, которая может нарушить код, - это если пользователь вводит слишком много пробелов перед именами файлов. Например: sample1.qseq, (представьте здесь 6 пробелов) barcode.txt (обратите внимание на многочисленные пробелы после запятой)

Другой пример: (представьте здесь 6 пробелов) sample1.qseq, barcode.txt (на этот раз обратите внимание на количество пробелов перед первым именем файла)

Я также хочу строки кода, которые могут удалить лишние пробелы, чтобы программа не ломалась. Я думаю, что пользовательский ввод должен быть в следующем формате: sample1.qseq, barcode.txt. Пользовательский ввод должен быть в этом формате, чтобы я мог правильно проиндексировать имена файлов в массив и вывести их позже.

Спасибо любая помощь или предложения, с благодарностью!

Ответы на вопрос(5)

Ваш ответ на вопрос