я следующую строку данных мне нужно разобрать в Perl:RegEx матч для многострочного в Perl
my $string='Upper Left ( 440720.000, 3751320.000) (117d38\'28.21"W, 33d54\'8.47"N)';
Вот мой скрипт на Perl:
if ($string=~ m/Upper Left\s+[(]\s+\d{1,6}[.]\d{1,3}[\,]\s+\d{1,6}[.]\d{1,3}[)]\s+[(](\d{1,3})d(\d{1,2})['](\d{1,2})[.](\d{1,2})/ig) {
$upperLeft="lat=". $1. 'd'. $2. "'". $3. ".". $4. '"W long='. $5. 'd'. $6. "'". $7. ".". $8. '"W';
print $upperLeft. "\n";
}
Однако это выражение не в 117d38'28.21" как lat и 33d54'8.47. Обратите внимание на пространство и '(' во входной строке $, которую я использую для создания этого регулярного выражения.
Что я делаю неправильно при извлечении (117d38'28.21 "W, 33d54 '8.47 "N) в 8 полей? y помощь приветствуется.
Пробовали ли вы это? – acdcjunior
Я попробую и дам вам знать ... спасибо ... – user914425
спасибо, что это сработало. – user914425