У меня есть часть инструкции ORDER BY, и я должен разделить ее на логические части
my $sql_part = <<EOH
IF(some_table.some_field <> 3, 1, 0),
some_table.other_field,
CASE other_table.third_field WHEN IS NULL THEN 2 ELSE 1 END,
other_table.third_field
EOH
, и, вы знаете, исходная строка не содержит символов новой строки и IF может быть вложенной.1004 *
Проблема в том, что я не хочу разбивать вещи внутри вложенных IF, вызовов функций.
Так просто split /\s*,\s*/, $sql_part
не будет работать.
Есть лирегулярное выражение, которое может сделать это, или я должен сделать это просто по-другому?