[Perl, regexp] убрать запятую из строки

uncle17

Я совсем тупой, или где?
Грубо говоря:

if ($var =~ /<td>(.*?)<\/td><td>(.*?)<\/td>/)
{
my $var1 = $1;
my $var2 = $2;
}

$var1 представляет собой число. Если оно > 999, то представляется в виде "1,234" (к примеру)
Затем оно умножается на какое-то число. Скажем, на 5. Пока меньше 1000, всё отлично - на выходе дает произведение. Ну, дальше понятно...
$var1 =~ s/,//;
не помогает. Тоиссь совсем. Я совсем тупой?

kruzer25

Запятую экранировать не пробовал?

uncle17

пробовал
пробовал даже $var1 *= 1 делать

buka

запятая всегда одна?

artimon

Пример входа и что на выходе?
Вообще-то неплохо бы ещё флаг g выставить при замене запятых.

uncle17

g выставлял, но запятая или одна или ноль, так что это не принципиально.
запятая одна или ноль - до цифр больше миллиона нам еще далеко
На выходе очень похоже на пустую строку, поскольку это делается в некоем цикле, в котором написано
next if $var1 eq "";
и эти значения просто не включаются в дальнейшую обработку. Если я не обрабатываю строчку, то в обработку включается либо $var1, если <1000, либо то, что до запятой, если >=1000

sl99

в реестр данных при этом необходимо обновлятся

uncle17

с тебя теперь либо согласование падежей, либо более подробное объяснение

uncle17

Матьтвою.... Всё нормально на выходе. Убрал
next if ($var1 eq '')
всё запахало
Но почему - ума не приложу

Anna74

В первичном посте вообще мало инфы, да и потом... Как можно начать думать и что-то сказать, легче пойти дальше
Оставить комментарий
Имя или ник:
Комментарий: