PCRE2 10.45

PCRE2 10.45

Rohkem kui kuue kuu arendustegevuse järel ilmus PERL-ühilduvate regulaaravaldiste 10.45 versioon. PCRE2, mis on kirjutatud keeles C ja levitatakse BSD-litsentsi alusel. See on suhteliselt suur väljaanne, mis sisaldab uusi funktsioone, mõningaid vigade parandusi ja mitmeid muudatusi, mis mõjutavad tagasiühilduvust vaid veidi.

Versioon 10.45 on esimene väljaanne, mille on koostanud projekti uued hooldajad, kes tänavad Philip Hazelit, PCRE ja PCRE2 projektide loojat ja hooldajat.

Muudatuste nimekiri:

  • JIT-kompileerimise projekt sljit on nüüd kasutusel Git-alammodulina.
  • Unicode andmeid on uuendatud versioonini 16.
  • Unicode'i omaduste Ll, Lt ja Lu mittepiiratud vastavus on muudetud Perlile vastavaks. Varasemalt võttis muster /p{Ll}/i arvesse ainult väikseid tähte (isegi kui oli määratud suuruse tähelepanuta jätmine). See muudatus mõjutab ka POSIXi klasside, nagu näiteks [:lower:], mittepiiratud vastavust.
  • Uus funktsioon scan_substring on lisatud. See on uus tüüpi väide, mis vastab haaratud ploki sisule alamplokis.
    Näiteks väljend b(w++)(*scan_substring:(1).+rh) leiab sõna, mis sisaldab haruldasi inglise keeles tähestiku järjestusi „rh“, mis ei asu alguses.
  • Sümbolklasside tugi on lisatud, mis on kooskõlas UTS#18 (Unicode Regular Expressions), uue PCRE2_ALT_EXTENDED_CLASS valiku kaudu. Selleks tuleb kasutada [ metasimbolina sümbolklassides ja operaatorites &&, - ja ~~ , mis võimaldab hõlpsasti teostada sümbolklasside lahutamist ja ristumisi.
    Näiteks Tai või kreeka tähtede vastavuseks (aga mitte nende kirwritingute tähtedele või muudele sümbolitele) võib kasutada väljendit [p{L}&&[p{Thai}||p{Greek}]].
  • Perli stiilis laiendatud sümbolklasside tugi on lisatud, kasutades sünakssi (?[…]). See võimaldab samuti väljendada sümbolklasside lahutamisi ja ristumisi, kuid erineva sünakssiga kui UTS#18 (Unicode Regular Expressions).
    Näiteks Tai või Kreeka tähtede vastavuseks (kuid mitte nende kirjutustes olevate tähtede või muude sümbolite jaoks) võib kasutada väljendit (?[p{L} & (p{Thai} + p{Greek})]).
  • Olulised parandused sümbolklasside vastavuse mehhanismis. Kompileeritud sümbolklassid on nüüd kompaktsemad ja pakuvad kiiremat vastavust suurte või keerukate sümbolikogumite jaoks, kasutades binaarset otsingut kogumi kaudu.
  • API-sse on lisatud uus funktsioon pcre2_set_optimize(), et hallata optimeerimisi.
  • Mitmeid täiustusi funktsioonis pcre2_substitute().
  • Muud täiustused ja veaparandused.

Allikas: linux.org.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster