I-PCRE2 10.45

I-PCRE2 10.45

Ngemva kweminyaka engaphezu kwesigamu sokuthuthukiswa, 10.45 womtapo wolwazi ohambisana ne-PERL ukhululiwe. PCRE2, ebhalwe ngo-C futhi yasatshalaliswa ngaphansi kwelayisensi ye-BSD. Lokhu ukukhishwa okukhulu uma kuqhathaniswa, okuhlanganisa izici ezintsha, okunye ukulungiswa kweziphazamisi, nezinguquko ezimbalwa ezinomthelela omncane ekusebenzisaneni emuva.

Inguqulo engu-10.45 iwukukhululwa kokuqala okulungiselelwe abagcini bephrojekthi abasha, ababonga u-Philip Hazel, umdali nomnakekeli wephrojekthi ye-PCRE ne-PCRE2.

Uhlu lwezinguquko:

  • Iphrojekthi yokuhlanganisa i-JIT sljit manje esetshenziswa njengemodule engaphansi ye-Git.
  • Kubuyekezwe idatha ye-Unicode yaba yinguqulo 16.
  • Imephu engazweli yezindawo ze-Unicode Ll, Lt, ne-Lu ishintshiwe ukuze ifane ne-Perl. Ngaphambilini, iphethini ethi /p{Ll}/i ibifana nezinhlamvu ezincane kuphela (ngisho noma ukufanisa okungenazwelo bekucacisiwe). Lolu shintsho luphinde luthinte ukufana okungazweli kwecala lamakilasi e-POSIX afana ne-[:lower:].
  • Kwengezwe umsebenzi omusha scan_substring. Lolu uhlobo olusha lokugomela olufana nokuqukethwe kwebhulokhi yokuthwebula ngokumelene nephethini encane.
    Isibonelo, isisho esithi b(w++)(*scan_substring:(1).+rh) sithola igama eliqukethe ukulandelana kwezinhlamvu zesiNgisi ezingavamile "rh" elingekho ekuqaleni.
  • Ukwesekwa okwengeziwe kwamakilasi ezinhlamvu ahambisana ne UTS#18 (Unicode Regular Expressions), usebenzisa inketho entsha ye-PCRE2_ALT_EXTENDED_CLASS. Ukuze wenze lokhu, udinga ukusebenzisa [ njenge-metacharacter ezigabeni zabalingiswa kanye nabaqhubi &&, —, kanye ~~, okuvumela ukuthi wenze ukususa kanye nokuphambana kwezigaba zezinhlamvu kalula.
    Ngokwesibonelo, ukuze uqondanise izinhlamvu zesiThai noma zesiGreki (kodwa hhayi izinhlamvu noma ezinye izinhlamvu kulezo mibhalo), ungasebenzisa isisho esithi [p{L}&&[p{Thai}||p{Greek}]].
  • Usekelo olungeziwe lwezigaba zezinhlamvu ezinwetshiwe zesitayela sika-Perl kusetshenziswa i-syntax ethi (?[...]). Iphinde ivumele ukususa nokuphambana kwezigaba zezinhlamvu ukuthi zivezwe, kodwa kusetshenziswa i-syntax ehlukile kune UTS#18 (I-Unicode Regular Expressions).
    Ngokwesibonelo, ukuze uqondanise izinhlamvu zesiThai noma zesiGreki (kodwa hhayi izinhlamvu noma ezinye izinhlamvu kulezo mibhalo), ungasebenzisa inkulumo ethi (?[p{L} & (p{Thai} + p{Greek})]).
  • Ukuthuthukiswa okuphawulekayo kwindlela yokufanisa isigaba somlingisi. Izigaba zezinhlamvu ezihlanganisiwe manje sezihlangene kakhulu futhi zihlinzeka ngokufaniswa okusheshayo kwamasethi ezinhlamvu ezinkulu noma eziyinkimbinkimbi kusetshenziswa ukusesha kanambambili phezu kwesethi.
  • Umsebenzi omusha pcre2_set_optimize() wengezwe ku-API ukuze uphathe ukulungiselelwa.
  • Ukuthuthukiswa okuningi komsebenzi we-pcre2_substitute().
  • Okunye ukuthuthukiswa nokulungiswa kweziphazamisi.

Source: linux.org.ru

Thenga ukusingathwa okuthembekile kwamasayithi anokuvikelwa kwe-DDoS, amaseva e-VPS VDS 🔥 Thenga ukusingathwa kwewebhusayithi okuthembekile ngokuvikelwa kwe-DDoS, amaseva e-VPS VDS | ProHoster