Size: a a a

2019 December 10

AK

Andrey Konovalov in Modern::Perl
Andrei Protasovitski
Вот именно, что до первой закрывающей. То есть, если скормить этому re строку "(())", оно вернёт "(()", да?
Задача решаема регулярками без превращения регулярок в совсем не регулярный треш с конечными автоматами фактически - только если как у открывающей скобки, так и у закрывающей есть контекст, отличающей их от других таких скобок.
источник

AK

Andrey Konovalov in Modern::Perl
Т.е. не всегда даже если что-то можно сделать регулярками - это нужно делать регулярками, особенно если всё-таки предполагается, что кто-то это потом будет читать или даже править
источник

CN

Cyrill Novgorodcev in Modern::Perl
т.е. не всегда даже если что-то можно сказать - это нужно делать, особенно если всё-таки предполагается, что кто-то это потом будет читать или даже править
источник

AP

Andrei Protasovitski in Modern::Perl
Cyrill Novgorodcev
<- в эту сторону
Со строкой "()()" что будет?
источник

CN

Cyrill Novgorodcev in Modern::Perl
источник

CN

Cyrill Novgorodcev in Modern::Perl
чуть-чуть поправил, надо было вместо + использовать *
источник

R

Roman in Modern::Perl
Askar Timirgazin
Доброго времени суток, ни у кого не завалялось в закладках статьи про сравнение модулей для сериализации данных в перл5?
Кратко: чем бы вы не воспользовались из типовых XS решений (JSON, Storable, ProtoBuf), в 99% случаев вы не заметите существенной разницы, наступающей при переходе к масштабам порядка 1М сериализованного и выше. Т.ч. пользуйтесь тем, чем вам удобно!
источник

AP

Andrei Protasovitski in Modern::Perl
Это неважно. Важно, что оно матчит всю строку, а не первые скобки.
источник

VG

Vadim Goncharov in Modern::Perl
Roman
Кратко: чем бы вы не воспользовались из типовых XS решений (JSON, Storable, ProtoBuf), в 99% случаев вы не заметите существенной разницы, наступающей при переходе к масштабам порядка 1М сериализованного и выше. Т.ч. пользуйтесь тем, чем вам удобно!
существенной в чем?
источник

AP

Andrei Protasovitski in Modern::Perl
Александр Поляков
Привет всем!
Есть гуру регулярных выражений?
Надо выцепить подстроку в скобках из строки.

Например: "Начало строки (подстрока (с учетом того, что тут могут быть еще скобки)) продолжение строки"

Нужно получить: "(подстрока (с учетом того, что тут могут быть еще чкобки))".

У кого есть идеи?
Я бы не стал это решать регуляркой.
источник

CN

Cyrill Novgorodcev in Modern::Perl
Andrei Protasovitski
Это неважно. Важно, что оно матчит всю строку, а не первые скобки.
что начит, всю строку, а не первые скобки? Он матчик строку от первой открывающей до последней закрывающей.
источник

CN

Cyrill Novgorodcev in Modern::Perl
проверять на то, сбалансированы они или нет - никто не собирался
источник

R

Roman in Modern::Perl
Прежде всего CPU. Как не странно, ProtoBuf, при наличии у него типизации, не дает выйгрыша в скорости. Потому, что обработка структур перла медленнее, чем парсинг/сериализация JSON.
Что касается размера конечного продукта, JSON проигрывает, если его не сжимать. После сжатия он выигрывает. Рекомендую Compress::Zstd на минимальном уровне: примерно как deflate, но раза в 3+ быстрее.
источник

AP

Andrei Protasovitski in Modern::Perl
Там нужна подстрока в скобках, а здесь "()()' - две подстроки в скобках.
источник

CN

Cyrill Novgorodcev in Modern::Perl
я могу сбалансировать, если вопрос в этом )
источник

VG

Vadim Goncharov in Modern::Perl
Roman
Прежде всего CPU. Как не странно, ProtoBuf, при наличии у него типизации, не дает выйгрыша в скорости. Потому, что обработка структур перла медленнее, чем парсинг/сериализация JSON.
Что касается размера конечного продукта, JSON проигрывает, если его не сжимать. После сжатия он выигрывает. Рекомендую Compress::Zstd на минимальном уровне: примерно как deflate, но раза в 3+ быстрее.
с кем сравнивалось-то? protobuf далеко не лучший вариант, есть CBOR
источник

VG

Vadim Goncharov in Modern::Perl
в общем, человек попросил набор сравнений, а не мысли о произвольно взятых двух...
источник

R

Roman in Modern::Perl
Вадим, больше сообщить не могу. Свои тесты я не публиковал, они чисто для внутренних нужд были нужны, для оценки. Хотите подробно - ищите, наверняка кто-то писал тут или еще где.
источник

AK

Andrey Konovalov in Modern::Perl
Александр Поляков
Привет всем!
Есть гуру регулярных выражений?
Надо выцепить подстроку в скобках из строки.

Например: "Начало строки (подстрока (с учетом того, что тут могут быть еще скобки)) продолжение строки"

Нужно получить: "(подстрока (с учетом того, что тут могут быть еще чкобки))".

У кого есть идеи?
Кавычки здесь являются частью строки? На мой взгляд, нет.
источник

R

Roman in Modern::Perl
Storable - как native решение. JSON - как распространенное решение. PB - как можное веяние. Нужно еще что-то - потратьте время, попробуйте.
источник