Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ
ΠΡΠΊΡΡΠ²Π°ΡΡΠ°Ρ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½Π°Ρ ΡΠΊΠΎΠ±ΠΊΠ° ΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ Π½Π°ΡΠ°Π»ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°,
ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π²Π΅ΡΡΠ°ΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΠΎΠΉ ΡΠΊΠΎΠ±ΠΊΠΎΠΉ. Π‘ΠΈΠΌΠ²ΠΎΠ» Β«]Β» Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ
Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΈ Π΅ΡΠ»ΠΈ Π·Π°ΠΊΡΡΠ²Π°ΡΡΠ°Ρ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½Π°Ρ ΡΠΊΠΎΠ±ΠΊΠ° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ° ΠΊΠ°ΠΊ ΡΠ»Π΅Π½
ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°, ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΡΠ»Π΅
ΠΎΡΠΊΡΡΠ²Π°ΡΡΠ΅ΠΉ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΠΎΠΉ ΡΠΊΠΎΠ±ΠΊΠΈ (Π΅ΡΠ»ΠΈ ΡΠΊΠ°Π·Π°Π½ ΠΌΠ΅ΡΠ°ΡΠΈΠΌΠ²ΠΎΠ» Β«^Β», ΡΠΎ
Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΡΠ»Π΅ Π½Π΅Π³ΠΎ), Π»ΠΈΠ±ΠΎ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΌ ΡΠ»Π΅ΡΠ΅ΠΌ.
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π²Ρ
ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ;
ΡΠΈΠΌΠ²ΠΎΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ
ΠΎΠ΄ΠΈΡΡ Π² Π½Π°Π±ΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ Π² ΠΊΠ»Π°ΡΡΠ΅,
Π΅ΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» Π² ΠΊΠ»Π°ΡΡΠ΅ Π½Π΅ ΡΠΈΡΠΊΡΠΌΡΠ»Π΅ΠΊΡ Β«^Β»,
ΡΠΎΠ³Π΄Π° ΡΠΈΠΌΠ²ΠΎΠ» Π²Ρ
ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ
ΠΎΠ΄ΠΈΡΡ Π² ΠΊΠ»Π°ΡΡ. ΠΡΠ»ΠΈ ΡΠΈΡΠΊΡΠΌΡΠ»Π΅ΠΊΡ Β«^Β»
Π½ΡΠΆΠ΅Π½ ΠΊΠ°ΠΊ ΡΠ»Π΅Π½ ΠΊΠ»Π°ΡΡΠ°, ΠΏΡΠΎΠ²Π΅ΡΡΡΡ, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½Π΅ ΡΡΠ» ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠ»Π°ΡΡΠ°,
Π»ΠΈΠ±ΠΎ ΡΠΊΡΠ°Π½ΠΈΡΡΡΡ ΡΠΈΡΠΊΡΠΌΡΠ»Π΅ΠΊΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΌ ΡΠ»Π΅ΡΠ΅ΠΌ.
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ [aeiou], Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΉ Π³Π»Π°ΡΠ½ΠΎΠΉ Π±ΡΠΊΠ²Π΅
Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅, ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΊΠ»Π°ΡΡ [^aeiou] ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΌΡ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎΠΌΡ
ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΡΠ΅Π³ΠΈΡΡΡΠ°.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΠΈΡΠΊΡΠΌΡΠ»Π΅ΠΊΡ β ΠΏΡΠΎΡΡΠΎ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ
ΠΊΠ»Π°ΡΡ Π·Π° ΡΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ΅Ρ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²Ρ
ΠΎΠ΄ΠΈΡΡ Π² ΠΊΠ»Π°ΡΡ.
Π‘ΠΈΠΌΠ²ΠΎΠ» Π½Π°ΡΠ°Π»Π° ΡΡΡΠΎΠΊΠΈ β Π½Π΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅: ΠΎΠ½ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ» ΠΈΠ· Π²Ρ
ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ
ΠΈ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ, Π΅ΡΠ»ΠΈ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ.
ΠΡΠΈ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΌ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ
Π±ΡΠΊΠ²Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΊΠ°ΠΊ Π² Π²Π΅ΡΡ
Π½Π΅ΠΌ,
ΡΠ°ΠΊ ΠΈ Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅. ΠΠΎΡΡΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ [aeiou]
ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΊΠ°ΠΊ Π±ΡΠΊΠ²Π΅ Β«AΒ», ΡΠ°ΠΊ ΠΈ Π±ΡΠΊΠ²Π΅ Β«aΒ».
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, ΠΊΠ»Π°ΡΡ [^aeiou] Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π½ΠΈ Β«AΒ», Π½ΠΈ Β«aΒ», ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π²
ΡΠ΅Π³ΠΈΡΡΡΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ Π±Ρ ΡΠΎΡΡΠΎΡΠ»ΠΎΡΡ.
ΠΠ½ΡΡΡΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΡΡΡΠΎΠΊΠΈ Β«\nΒ» Π½Π΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ
Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π½Π°Π»ΠΈΡΠΈΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ²
PCRE_DOTALL ΠΈ
PCRE_MULTILINE.
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ, ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π½Π° ΠΎΡΡΠΈΡΠ°Π½ΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ [^a], Π²ΡΠ΅Π³Π΄Π°
ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΡΡΡΠΎΠΊΠΈ.
Π‘ΠΈΠΌΠ²ΠΎΠ» ΠΌΠΈΠ½ΡΡ Β«-Β» (Π΄Π΅ΡΠΈΡ) Π²Π½ΡΡΡΠΈ ΠΊΠ»Π°ΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°Π΄Π°Π½ΠΈΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, [d-m] ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ,
Π½Π°Ρ
ΠΎΠ΄ΡΡΠ΅ΠΌΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Β«dΒ» ΠΈ Β«mΒ», Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ°ΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Β«dΒ» ΠΈ Β«mΒ».
ΠΡΠ»ΠΈ Β«-Β» Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊ ΡΠ»Π΅Π½ ΠΊΠ»Π°ΡΡΠ°,
ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ
ΠΊΠ°ΠΊ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΡΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ°),
Π»ΠΈΠ±ΠΎ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠ»Π΅ΡΠ°.
ΠΠ΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ Π·Π°ΠΊΡΡΠ²Π°ΡΡΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΡ Β«]Β» ΠΊΠ°ΠΊ Π³ΡΠ°Π½ΠΈΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ°ΡΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅Ρ ΡΠ°Π±Π»ΠΎΠ½ Β«[W-]46]Β»
ΠΊΠ°ΠΊ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²: Β«WΒ» ΠΈ Β«-Β», Π·Π° ΠΊΠΎΡΠΎΡΡΠΌΠΈ
ΠΈΠ΄ΡΡ ΡΡΡΠΎΠΊΠ° Β«46]Β», ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°Π±Π»ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ
ΡΡΡΠΎΠΊΠ°ΠΌ Β«W46]Β» ΠΈΠ»ΠΈ Β«-46]Β».
Π§ΡΠΎΠ±Ρ Π²ΡΡ ΠΆΠ΅ Π·Π°Π΄Π°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ» Β«]Β» Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, Π΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ
Π·Π°ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΌ ΡΠ»Π΅ΡΠ΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ°ΡΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅Ρ
ΡΠ°Π±Π»ΠΎΠ½ [W-\]46] ΠΊΠ°ΠΊ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°
Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π΄Π²ΡΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ Β«4Β» ΠΈ Β«6Β».
Π’Π°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΡΡΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠ΅
ΠΈΠ»ΠΈ Π²ΠΎΡΡΠΌΠ΅ΡΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Π° Β«]Β».
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ
ΠΊΠ»Π°ΡΡΠΎΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ASCII-ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²,
ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΈΠΌΠ²ΠΎΠ» Β«-Β». ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠΈΡΠ»Π°ΠΌΠΈ,
Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ [\000-\037]. ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π±ΡΠΊΠ²Π°ΠΌ Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΠΈ Π²Π΅ΡΡ
Π½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ°Ρ
,
Π΅ΡΠ»ΠΈ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π²ΠΊΠ»ΡΡΠΈΠ»ΠΈ Π±ΡΠΊΠ²Ρ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠΎΠ½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠ΅ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ,
Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ [W-c] ΠΈ [][\^_`wxyzabc] ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Ρ, ΠΏΠ°ΡΡΠ΅Ρ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»Ρ
Π±Π΅Π· ΡΡΡΡΠ° ΡΠ΅Π³ΠΈΡΡΡΠ°, Π° Π΅ΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π΄Π»Ρ ΡΡΠ°Π½ΡΡΠ·ΡΠΊΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΠΈ Β«frΒ»,
ΠΏΠ°ΡΡΠ΅Ρ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° [\xc8-\xcb] ΡΠ΄Π°ΡΠ½ΠΎΠΌΡ Β«EΒ» Π² ΠΎΠ±ΠΎΠΈΡ
ΡΠ΅Π³ΠΈΡΡΡΠ°Ρ
.
Π’ΠΈΠΏΠ°ΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² \d, \D, \s, \S, \w ΠΈ \W ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ
Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ
ΠΊΠ»Π°ΡΡΠ°Ρ
ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ, Π² ΠΊΠ»Π°ΡΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ»Π°ΡΡ [\dABCDEF] ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ
Π»ΡΠ±ΠΎΠΉ ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅. Π‘ΠΈΠΌΠ²ΠΎΠ» Β«^Β» ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Ρ ΡΠΈΠΏΠ°ΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²
Π² Π²Π΅ΡΡ
Π½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ·ΠΊΠΈΠΉ Π½Π°Π±ΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ,
ΠΊΠ»Π°ΡΡ [^\W_] ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΉ Π±ΡΠΊΠ²Π΅ ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅, Π½ΠΎ Π½Π΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΡΡΠΊΠΈΠ²Π°Π½ΠΈΡ.
ΠΡΠ΅ Π½Π΅Π±ΡΠΊΠ²Π΅Π½Π½ΠΎ-ΡΠΈΡΡΠΎΠ²ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΊΡΠΎΠΌΠ΅ \, -, ^ Π² Π½Π°ΡΠ°Π»Π΅ ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π° Β«]Β» Π² ΠΊΠΎΠ½ΡΠ΅,
Π½Π΅ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌ Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅, Π½ΠΎ ΡΠΊΡΠ°Π½ΠΈΡΡΡΡΠΈΠΉ
ΡΠ»Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄ Π½ΠΈΠΌΠΈ Π½Π΅ Π½Π°Π²ΡΠ΅Π΄ΠΈΡ. Π‘ΠΈΠΌΠ²ΠΎΠ» ΠΊΠΎΠ½ΡΠ° ΡΠ°Π±Π»ΠΎΠ½Π° β Π²ΡΠ΅Π³Π΄Π° ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ»
ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π·Π°ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°Π½ Π²Π½ΡΡΡΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ.
Π―Π·ΡΠΊ Perl ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π½ΠΎΡΠ°ΡΠΈΡ POSIX Π΄Π»Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ
ΠΊΠ»Π°ΡΡΠΎΠ². ΠΡΠΎ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ
ΠΈΠΌΠ΅Π½Π° Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ
ΡΠΊΠΎΠ±ΠΊΠ°Ρ
: [:
ΠΈ :]
.
ΠΠΎΠ΄ΡΠ»Ρ PCRE ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΡ ΡΠΈΠΏ Π·Π°ΠΏΠΈΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°Π±Π»ΠΎΠ½
[01[:alpha:]%]
ΡΠΎΠ²ΠΏΠ°Π΄ΡΡ Ρ Β«0Β», Β«1Β», Π»ΡΠ±ΡΠΌ Π°Π»ΡΠ°Π²ΠΈΡΠ½ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ
ΠΈΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ Β«%Β». ΠΠΎΠ΄ΡΠ»Ρ PCRE ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΊΠ»Π°ΡΡΠΎΠ²:
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ
alnum | Π±ΡΠΊΠ²Ρ ΠΈ ΡΠΈΡΡΡ |
alpha | Π±ΡΠΊΠ²Ρ |
ascii | ΡΠΈΠΌΠ²ΠΎΠ»Ρ Ρ ΠΊΠΎΠ΄Π°ΠΌΠΈ 0β127 |
blank | ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ±Π΅Π» ΠΈΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ |
cntrl | ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ |
digit | Π΄Π΅ΡΡΡΠΈΡΠ½ΡΠ΅ ΡΠΈΡΡΡ (ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ \d) |
graph | ΠΏΠ΅ΡΠ°ΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΈΡΠΊΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ±Π΅Π» |
lower | ΡΡΡΠΎΡΠ½ΡΠ΅ Π±ΡΠΊΠ²Ρ |
print | ΠΏΠ΅ΡΠ°ΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ±Π΅Π» |
punct | ΠΏΠ΅ΡΠ°ΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΈΡΠΊΠ»ΡΡΠ°Ρ Π±ΡΠΊΠ²Ρ ΠΈ ΡΠΈΡΡΡ |
space | ΠΏΡΠΎΠ±Π΅Π»ΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ(ΠΏΠΎΡΡΠΈ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ \s) |
upper | ΠΏΡΠΎΠΏΠΈΡΠ½ΡΠ΅ Π±ΡΠΊΠ²Ρ |
word | ΡΠΈΠΌΠ²ΠΎΠ»Ρ Β«ΡΠ»ΠΎΠ²Π°Β» (ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ \w) |
xdigit | ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠ΅ΡΠΈΡΠ½ΡΠ΅ ΡΠΈΡΡΡ |
ΠΠ»Π°ΡΡ ΠΏΡΠΎΠ±Π΅Π»ΡΠ½ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (
space
) β ΡΡΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°Π±ΡΠ»ΡΡΠΈΡ (HT, 9),
ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ (LF, 10), Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½Π°Ρ ΡΠ°Π±ΡΠ»ΡΡΠΈΡ (VT, 11), ΡΠ°Π·ΡΡΠ² ΡΡΡΠ°Π½ΠΈΡΡ (FF, 12),
Π²ΠΎΠ·Π²ΡΠ°Ρ ΠΊΠ°ΡΠ΅ΡΠΊΠΈ (CR, 13) ΠΈ ΠΏΡΠΎΠ±Π΅Π» (32). Π£ΡΡΠΈΡΠ΅, ΡΡΠΎ ΡΡΠΎΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ
Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ°Π±ΡΠ»ΡΡΠΈΡ (VT, ΠΊΠΎΠ΄ 11). ΠΡΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅Ρ Β«spaceΒ» ΠΎΡ
\s
,
ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ» (Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ Perl).
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ word
β ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Perl, Π° blank
β
ΠΌΠΎΠ΄ΡΠ»Ρ GNU, Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ Perl 5.8. ΠΡΡΠ³ΠΎΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Perl β
ΠΎΡΡΠΈΡΠ°Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ^
ΠΏΠΎΡΠ»Π΅
Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, [12[:^digit:]]
ΡΠΎΠ²ΠΏΠ°Π΄ΡΡ Ρ Β«1Β», Β«2Β»,
ΠΈΠ»ΠΈ Ρ Π»ΡΠ±ΠΎΠΉ Π½Π΅-ΡΠΈΡΡΠΎΠΉ.
Π ΡΠ΅ΠΆΠΈΠΌΠ΅ UTF-8 ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π²ΡΡΠ°ΡΡ 128, Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄ΡΡ Π½ΠΈ Ρ ΠΎΠ΄Π½ΠΈΠΌ
ΠΈΠ· ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ
ΠΊΠ»Π°ΡΡΠΎΠ² POSIX.
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ libpcre 8.10 Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ, ΡΡΠΎΠ±Ρ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Unicode, Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΡΡΠΎΠΌ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Β» ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ PCRE(3).
Π‘Π²ΠΎΠΉΡΡΠ²Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Unicode ΠΌΠΎΠ³ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π²Π½ΡΡΡΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°.
ΠΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ°ΡΡΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. Π‘ΠΈΠΌΠ²ΠΎΠ» ΠΌΠΈΠ½ΡΡ (Π΄Π΅ΡΠΈΡ), ΠΏΠΎΡΠ»Π΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ
ΠΊΠ»Π°ΡΡ Unicode Π±ΡΠ΄Π΅Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Π±ΡΠΊΠ²Π°Π»ΡΠ½ΠΎ. ΠΠΎΠΏΡΡΠΊΠ° Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½
ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΠΌ ΡΠΈΠΌΠ²ΠΎΠ»Π° Unicode Π²ΡΠ·ΠΎΠ²Π΅Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅.