far RegExp -> PCRE2 ?

Разработка Far.
2useven10
Posts: 2836
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 72 times

far RegExp -> PCRE2 ?

Postby 2useven10 » Tue 07 Mar, 2017 07:32

Не пора ли?

Shmuel
Posts: 4911
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 118 times

far RegExp -> PCRE2 ?

Postby Shmuel » Tue 07 Mar, 2017 10:13

Если есть желание, почему бы и нет.
PCRE несколько тормозит с юникодом, на выражениях, содержащих \w, \b и т.п. Может быть PCRE2 не имеет этой проблемы.

User avatar
DrKnS
Posts: 4434
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 101 times
Contact:

far RegExp -> PCRE2 ?

Postby DrKnS » Tue 07 Mar, 2017 12:20

Судя по Comparison of regular expression engines, ничего особо лучше всё равно нет.

Shmuel
Posts: 4911
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 118 times

far RegExp -> PCRE2 ?

Postby Shmuel » Tue 07 Mar, 2017 13:19

По моему опыту, Oniguruma не хуже PCRE, прилично быстрее и поддерживает разные (в том числе юникодные) кодировки одним и тем же движком, без его перекомпиляции. Можно даже параметром задавать тип синтаксиса выражения (Perl, Python, Ruby и т.д.).
Но PCRE значительно лучше документирован и по-видимому более распространён.

2useven10
Posts: 2836
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 2 times
Been thanked: 72 times

far RegExp -> PCRE2 ?

Postby 2useven10 » Tue 07 Mar, 2017 14:51

У нас (по крайней мере пока) только UCS2.
PCRE для UTF16, UTF8 надо собирать отдельно из тех же сорсов, но ф-и там разведены можно использовать одновременно обе сборки.
Вообще можно через внешнюю .dll (как с консолью) дать возможнось подключить любой движок.

User avatar
DrKnS
Posts: 4434
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 101 times
Contact:

far RegExp -> PCRE2 ?

Postby DrKnS » Tue 07 Mar, 2017 15:05

2useven10 wrote:Source of the post Вообще можно через внешнюю .dll (как с консолью) дать возможнось подключить любой движок.

У нас регекс торчит наружу через API, поэтому "любой движок" может быть излишней гибкостью.


Return to “Development”

Who is online

Users browsing this forum: No registered users and 1 guest