Π Π°Π±ΠΎΡ‚Π° с тСкстовыми Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ часто Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° нСстандартных ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Одной ΠΈΠ· самых распространСнных Π·Π°Π΄Π°Ρ‡ являСтся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ числовыС значСния, Π·Π°ΡˆΠΈΡ‚Ρ‹Π΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ тСкста, Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π². Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ†ΠΈΡ„Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅ прайс-листов, парсингС Π½Π°Π·Π²Π°Π½ΠΈΠΉ Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°. НСсмотря Π½Π° ΠΊΠ°ΠΆΡƒΡ‰ΡƒΡŽΡΡ простоту, стандартный Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ языка запросов ΠΈ встроСнного языка ΠΈΠΌΠ΅Π΅Ρ‚ свои Π½ΡŽΠ°Π½ΡΡ‹.

Π’ зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, сущСствуСт нСсколько способов Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту Π·Π°Π΄Π°Ρ‡Ρƒ. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ классичСский ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ символов, ΠΌΠΎΡ‰Π½Ρ‹Π΅ рСгулярныС выраТСния ΠΈΠ»ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ стандартных подсистСм (Π‘Π‘ΠŸ). Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ Π²Π°ΠΌ просто ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ числа ΠΈΠ»ΠΈ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Ρ‡ΠΈΡΠ»ΠΎΠ²ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ· Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½ΠΎΠΉ строки. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Анализ структуры строки ΠΈ постановка Π·Π°Π΄Π°Ρ‡ΠΈ

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ написанию ΠΊΠΎΠ΄Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΌΡ‹ ΠΈΡ‰Π΅ΠΌ. Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ Ρ†ΠΈΡ„Ρ€Ρƒ, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ†ΠΈΡ„Ρ€, ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΡ… Ρ†Π΅Π»ΠΎΠ΅ число, ΠΈΠ»ΠΈ Π΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ с Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ. Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… исходной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ всСгда строковый, Π½ΠΎ Ρ†Π΅Π»Π΅Π²Ρ‹ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ часто являСтся число ΠΈΠ»ΠΈ новая строка, очищСнная ΠΎΡ‚ мусора. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ символы"0"-"9" Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ арифмСтичСскиС сравнСния.

Частой ошибкой Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² являСтся ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ для удалСния всСх Π±ΡƒΠΊΠ². Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ нСэффСктивСн, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ пСрСчислСния всСх Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π±ΡƒΠΊΠ² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ спСцсимволы ΠΈ Π·Π½Π°ΠΊΠΈ прСпинания. Π“ΠΎΡ€Π°Π·Π΄ΠΎ Π½Π°Π΄Π΅ΠΆΠ½Π΅Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ β€” Ρ†ΠΈΡ„Ρ€Ρ‹, игнорируя всё ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅. Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ локаль: Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π΅Π³ΠΈΠΎΠ½Π°Ρ… Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ Π΄Ρ€ΠΎΠ±Π½ΠΎΠΉ части являСтся запятая, Π° Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… β€” Ρ‚ΠΎΡ‡ΠΊΠ°, Ρ‡Ρ‚ΠΎ услоТняСт поиск вСщСствСнных чисСл.

Если ваша Π·Π°Π΄Π°Ρ‡Π° сводится ΠΊ поиску ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния любой Ρ†ΠΈΡ„Ρ€Ρ‹, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ максимально простым. Однако, Ссли трСбуСтся ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ всС Ρ†ΠΈΡ„Ρ€Ρ‹ Π²ΠΎΠ΅Π΄ΠΈΠ½ΠΎ ΠΈΠ»ΠΈ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ срСди тСкста, Π»ΠΎΠ³ΠΈΠΊΠ° услоТняСтся. НСобходимо ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ситуаций, ΠΊΠΎΠ³Π΄Π° Ρ†ΠΈΡ„Ρ€ Π² строкС Π½Π΅Ρ‚ Π²ΠΎΠΎΠ±Ρ‰Π΅. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ поиска Π²Π΅Ρ€Π½ΡƒΡ‚Π½Ρ‹Π΅ значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ выполнСния.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»Π°ΠΌΠΈ, содСрТащими дСфисы ΠΈΠ»ΠΈ слэши (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,"Арт-123/45"), Π±ΡƒΠ΄ΡŒΡ‚Π΅ остороТны. ДСфис ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ воспринят ΠΊΠ°ΠΊ Π·Π½Π°ΠΊ минуса, Ссли Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ сразу ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² числовой Ρ‚ΠΈΠΏ.

πŸ“Š Какой ΠΌΠ΅Ρ‚ΠΎΠ΄ поиска Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅ всСго?
Цикл по символам
РСгулярныС выраТСния
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π‘Π‘ΠŸ
ВстроСнныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ строки

ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄: ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ символов Π² Ρ†ΠΈΠΊΠ»Π΅

Π‘Π°ΠΌΡ‹ΠΉ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ понятный способ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Π½Π° любой ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ любой вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ β€” это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ символа строки. ΠœΡ‹ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π΄ΠΎ послСднСго символа, провСряя Π΅Π³ΠΎ ΠΊΠΎΠ΄. Если ΠΊΠΎΠ΄ символа ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Ρ†ΠΈΡ„Ρ€, ΠΌΡ‹ добавляСм Π΅Π³ΠΎ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ процСссом ΠΈ Π½Π΅ зависит ΠΎΡ‚ Π²Π½Π΅ΡˆΠ½ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π°ΠΌ понадобится функция Π‘ΠΈΠΌΠ²ΠΎΠ» для получСния символа ΠΏΠΎ ΠΊΠΎΠ΄Ρƒ ΠΈ Π·Π½Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ΠΎΠ² Ρ†ΠΈΡ„Ρ€ ΠΎΡ‚ 48 Π΄ΠΎ 57 Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ASCII. Π₯отя Π² 1Π‘ Π΅ΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ способы ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ этого ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строку, ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· Ρ†ΠΈΡ„Ρ€, Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Π² исходном тСкстС. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ часто Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚"Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠ΅ΠΉ".

Ѐункция ΠžΡΡ‚Π°Π²ΠΈΡ‚ΡŒΠ’ΠΎΠ»ΡŒΠΊΠΎΠ¦ΠΈΡ„Ρ€Ρ‹(Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ°)

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ="";

Для Π‘Ρ‡ = 1 По Π‘Ρ‚Ρ€Π”Π»ΠΈΠ½Π°(Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ°) Π¦ΠΈΠΊΠ»

Π’Π΅ΠΊΠ‘ΠΈΠΌΠ²ΠΎΠ» = Π‘Ρ€Π΅Π΄(Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ°, Π‘Ρ‡, 1);

Если БтрНайти("0123456789", Π’Π΅ΠΊΠ‘ΠΈΠΌΠ²ΠΎΠ») > 0 Π’ΠΎΠ³Π΄Π°

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ + Π’Π΅ΠΊΠ‘ΠΈΠΌΠ²ΠΎΠ»;

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚;

ΠšΠΎΠ½Π΅Ρ†Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ

ИспользованиС Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΎΠΏΡ€Π°Π²Π΄Π°Π½ΠΎ Π² случаях, ΠΊΠΎΠ³Π΄Π° трСбуСтся высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° использованиС рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ. Однако, Ссли строка ΠΎΡ‡Π΅Π½ΡŒ длинная, Ρ†ΠΈΠΊΠ» ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ"ΡƒΠ·ΠΊΠΈΠΌ мСстом". Π’ Ρ‚Π°ΠΊΠΈΡ… случаях стоит Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹. Π’Π°ΠΊΠΆΠ΅

πŸ’‘

Для ускорСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ†ΠΈΠΊΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ строку Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ БтрНайтиН. Если Π½ΠΈ ΠΎΠ΄Π½Π° Ρ†ΠΈΡ„Ρ€Π° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, ΠΌΠΎΠΆΠ½ΠΎ сразу Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΏΡƒΡΡ‚ΡƒΡŽ строку, Π½Π΅ запуская тяТСлый Ρ†ΠΈΠΊΠ» ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°.

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² 1Π‘

Начиная с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… вСрсий ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π² 1Π‘ появилась нативная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ РСгулярноСВыраТСниС. Π­Ρ‚ΠΎ ΠΌΠΎΡ‰Π½Ρ‹ΠΉ инструмСнт, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ слоТныС ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ поиска. Для поиска Ρ†ΠΈΡ„Ρ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ шаблон \d, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт любой Ρ†ΠΈΡ„Ρ€Π΅ ΠΎΡ‚ 0 Π΄ΠΎ 9. ИспользованиС рСгулярок Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π΅Π΅ ΠΈ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅, особСнно ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π΅ просто Ρ†ΠΈΡ„Ρ€Ρ‹, Π° числа Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ РСгулярноСВыраТСниС позволяСт Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ совпадСния, Π½ΠΎ ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ ΠΈΡ… Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ. Π­Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ссли Π² строкС встрСчаСтся нСсколько Ρ€Π°Π·Ρ€ΠΎΠ·Π½Π΅Π½Π½Ρ‹Ρ… чисСл, ΠΈ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΡ… всС Π² Π²ΠΈΠ΄Π΅ массива. Бинтаксис ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слоТным для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ€Π°Π½Π΅Π΅ Π½Π΅ сталкивался с regex, Π½ΠΎ для Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ достаточно Π·Π½Π°Ρ‚ΡŒ нСсколько ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… мСтасимволов. НапримСр, шаблон \d+ Π½Π°ΠΉΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Π±ΠΎΠ»Π΅Π΅ Ρ†ΠΈΡ„Ρ€.

Π¨Π°Π±Π»ΠΎΠ½ ОписаниС ΠŸΡ€ΠΈΠΌΠ΅Ρ€ совпадСния
\d Одна любая Ρ†ΠΈΡ„Ρ€Π° "5" Π² строкС"А5Π‘"
\d+ ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ†ΠΈΡ„Ρ€ "123" Π² строкС"А123Π‘"
\d{3} Π ΠΎΠ²Π½ΠΎ Ρ‚Ρ€ΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹ "007" Π² строкС"АгСнт007"
\d+\.\d+ Π”Ρ€ΠΎΠ±Π½ΠΎΠ΅ число (Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ) "3.14" Π² тСкстС

ΠŸΡ€ΠΈ использовании рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ выраТСния Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ рСсурсы, поэтому, Ссли Π²Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ поиск Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ тысячам Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π»ΡƒΡ‡ΡˆΠ΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ РСгулярноСВыраТСниС ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ, мСняя Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ…ΠΎΠ΄Π½ΡƒΡŽ строку. Π­Ρ‚ΠΎ сущСствСнно ускорит Ρ€Π°Π±ΠΎΡ‚Ρƒ модуля.

ΠΡŽΠ°Π½ΡΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с экранированиСм

Π’ строках 1Π‘ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ слэш являСтся спСцсимволом. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ шаблон рСгулярного выраТСния Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ"\\d", Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π» Π΅Π³ΠΎ Π΄Π²ΠΈΠΆΠΊΡƒ рСгулярок.

ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Ρ… ΠŸΠΎΠ΄ΡΠΈΡΡ‚Π΅ΠΌ

Для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… конфигурациях (Π£Π’, Π‘ΠŸ, Π—Π£ΠŸ, КА), самым ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ являСтся использованиС Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ· Π‘Π‘ΠŸ (Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Ρ… ΠŸΠΎΠ΄ΡΠΈΡΡ‚Π΅ΠΌ). ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈΠšΠ»ΠΈΠ΅Π½Ρ‚Π‘Π΅Ρ€Π²Π΅Ρ€ содСрТит мноТСство ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. Π­Ρ‚ΠΎ избавляСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΎΡ‚ нСобходимости ΠΏΠΈΡΠ°Ρ‚ΡŒ вСлосипСды ΠΈ сниТаСт Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибок.

Одной ΠΈΠ· ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ являСтся Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚Π¦ΠΈΡ„Ρ€Ρ‹ ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈ для извлСчСния. Однако, часто Π² Π‘Π‘ΠŸ Π½Π΅Ρ‚ прямой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ"Π²Ρ‹Ρ€Π΅Π·Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†ΠΈΡ„Ρ€Ρ‹", поэтому Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, использованиС ΠΎΠ±Ρ‰ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π‘Π‘ΠŸ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ваш ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ ΠΊΠ°ΠΊ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Ρ‚Π°ΠΊ ΠΈ Π½Π° сСрвСрС, Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с контСкстом выполнСния.

Если Π² вашСй ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π‘Π‘ΠŸ, рСкомСндуСтся Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ этот ΠΌΠΎΠ΄ΡƒΠ»ΡŒ. Он содСрТит Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строковыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½ΠΎ ΠΈ инструмСнты для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Ρ‚Π°ΠΌΠΈ, Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈ HTTP-запросами. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ‰Π΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² состав ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ стандарт Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ для соврСмСнной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² экосистСмС 1Π‘.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π‘Π‘ΠŸ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² сильно ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ старых конфигурациях. ΠŸΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ всСгда провСряйтС сущСствованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠžΠ±Ρ‰ΠΈΠΉΠœΠΎΠ΄ΡƒΠ»ΡŒ.ЀункцияБущСствуСт ΠΈΠ»ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π°.

Поиск ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Ρ‹ Π² строкС

Иногда Π·Π°Π΄Π°Ρ‡Π° стоит Π½Π΅ Π² ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠΈ всСх Ρ†ΠΈΡ„Ρ€, Π° Π² Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ начинаСтся ΠΏΠ΅Ρ€Π²ΠΎΠ΅ число. Π­Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для раздСлСния строки Π½Π° Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ ΠΈ Ρ‡ΠΈΡΠ»ΠΎΠ²ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ. Для этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ БтрНайтиН, ΠΏΠ΅Ρ€Π΅Π΄Π°Π² Π΅ΠΉ строку со всСми Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌΠΈ Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ Π² качСствС подстроки для поиска. Ѐункция Π²Π΅Ρ€Π½Π΅Ρ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ вхоТдСния любого ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… символов.

Алгоритм выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: ΠΌΡ‹ ΠΈΡ‰Π΅ΠΌ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ любого символа ΠΈΠ· Π½Π°Π±ΠΎΡ€Π°"0123456789". Ѐункция БтрНайтиН ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для поиска мноТСства символов ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ. Если Π½ΠΈ ΠΎΠ΄Π½Π° Ρ†ΠΈΡ„Ρ€Π° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°, функция Π²Π΅Ρ€Π½Π΅Ρ‚ 0. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок ΠΏΡ€ΠΈ subsequent опСрациях со строкой.

Ѐункция ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠ·ΠΈΡ†ΠΈΡŽΠŸΠ΅Ρ€Π²ΠΎΠΉΠ¦ΠΈΡ„Ρ€Ρ‹(ВСкст)

Π¦ΠΈΡ„Ρ€Ρ‹ ="0123456789";

ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ = БтрНайтиН(ВСкст, Π¦ΠΈΡ„Ρ€Ρ‹);

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ;

ΠšΠΎΠ½Π΅Ρ†Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΡ€Π°ΠΉΠ½Π΅ быстро, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ядра ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Он Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ†ΠΈΠΊΠ»ΠΎΠ² ΠΈ слоТных вычислСний. Однако, ΠΎΠ½ Π½Π΅ скаТСт Π²Π°ΠΌ, какая ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ†ΠΈΡ„Ρ€Π° Π½Π°ΠΉΠ΄Π΅Π½Π°, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΅Ρ‘ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ. Если Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ саму Ρ†ΠΈΡ„Ρ€Ρƒ, достаточно Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π‘Ρ€Π΅Π΄ с Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠ΅ΠΉ ΠΈ Π΄Π»ΠΈΠ½ΠΎΠΉ 1.

πŸ’‘

Ѐункция БтрНайтиН являСтся самым ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ способом опрСдСлСния наличия Ρ†ΠΈΡ„Ρ€ Π² строкС Π±Π΅Π· нСобходимости ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ символ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок ΠΈ Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ случаи

ΠŸΡ€ΠΈ написании ΠΊΠΎΠ΄Π° для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ строк всСгда Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ"грязных" Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π² Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠΌ мСстС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹Π΅ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ символов (full-width digits) ΠΈΠ»ΠΈ спСцсимволы, ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ Π½Π° Ρ†ΠΈΡ„Ρ€Ρ‹. НапримСр, символ"β‘ " Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° Ρ†ΠΈΡ„Ρ€Ρƒ, Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Ρ‚Π°ΠΊΠΎΠ²ΠΎΠΉ Π½Π΅ являСтся. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ поиска ΠΈΡ… ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ вопросы ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ. ΠŸΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с внСшними систСмами (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Π΅Ρ€Π΅Π· XML ΠΈΠ»ΠΈ JSON) строка ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ Π² Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ русскиС Π±ΡƒΠΊΠ²Ρ‹ прСвратятся Π² кракозябры, Π° Ρ†ΠΈΡ„Ρ€Ρ‹ останутся Π½Π΅Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹ΠΌΠΈ. Π’Π°Ρˆ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ устойчив ΠΊ Ρ‚Π°ΠΊΠΈΠΌ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚Π°ΠΌ. Если Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡƒΡŽ строку Π² число Ρ‚ΠΈΠΏΠΎΠΌ Число, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Число с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΠ΄Π΅Π»ΠΈΡ‚Π΅ пустым строкам. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ символ ΠΈΠ· пустой строки Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ. ВсСгда Π΄Π΅Π»Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° пустоту ΠΏΠ΅Ρ€Π΅Π΄ запуском Π»ΡŽΠ±Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π­Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ Ρ‚ΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° 1Π‘, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ спасСт вас ΠΎΡ‚ мноТСства ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… сСссий Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Ѐункция прСобразования Π² число Число Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Π° ΠΊ настройкам Ρ€Π΅Π³ΠΈΠΎΠ½Π°. Π‘Ρ‚Ρ€ΠΎΠΊΠ°"1,5" ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² число, Ссли Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² систСмС Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΌ стоит Ρ‚ΠΎΡ‡ΠΊΠ°. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π€ΠΎΡ€ΠΌΠ°Ρ‚ для явного указания Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²

Какой ΠΆΠ΅ способ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ для ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΠΉ эксплуатации? Если Π²Ρ‹ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ дСсятки строк Π² дСнь, Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½Π° для Π³Π»Π°Π·Π°. Однако, ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… массивов Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ° тысяч Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² ΠΈΠ· Excel) Ρ€Π°Π·Π½ΠΈΡ†Π° становится ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎΠΉ. Π¦ΠΈΠΊΠ» ΠΏΠΎ символам Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Ρ‡Π΅ΠΌ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ поиска.

РСгулярныС выраТСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ самым ΠΌΠΎΡ‰Π½Ρ‹ΠΌ, Π½ΠΎ ΠΈ самым тяТСлым инструмСнтом. Π˜Ρ… Π½Π΅ стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² простых Ρ†ΠΈΠΊΠ»Π°Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² провСдСния, Ссли ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ simpler ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ. ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π·Π°Π΄Π°Ρ‡ являСтся комбинация БтрНайтиН для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈ встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строками для извлСчСния.

β˜‘οΈ Π§Π΅ΠΊ-лист Π²Ρ‹Π±ΠΎΡ€Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

FAQ: Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы

Как Π½Π°ΠΉΡ‚ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,"7", Π² строкС?

Для поиска ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ БтрНайти(Π‘Ρ‚Ρ€ΠΎΠΊΠ°,"7"). Она Π²Π΅Ρ€Π½Π΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния. Если Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ всС вхоТдСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ†ΠΈΠΊΠ» с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ БтрНайти, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· сдвигая Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ поиска Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ мСста.

МоТно Π»ΠΈ Π½Π°ΠΉΡ‚ΠΈ Ρ†ΠΈΡ„Ρ€Ρƒ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΡ Π±Π΅Π· ΠΊΠΎΠ΄Π°?

Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅) Π±Π΅Π· Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π° ΠΈΠ»ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½Π°ΠΉΡ‚ΠΈ Ρ†ΠΈΡ„Ρ€Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ нСльзя. Однако ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стандартныС ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ с ΠΎΡ‚Π±ΠΎΡ€ΠΎΠΌ, Ссли Π΄Π°Π½Π½Ρ‹Π΅ хранятся Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части. Для Ρ€Π°Π·ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшниС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ»ΠΈ консоль ΠΊΠΎΠ΄Π°.

Как ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ ΠΈΠ· строки"Π¦Π΅Π½Π°: 100.50 Ρ€ΡƒΠ±"?

Π’Π°ΠΌ потрСбуСтся рСгулярноС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с шаблоном \d+[.,]\d+, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ. ПослС нахоТдСния подстроки Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π·Π°ΠΏΡΡ‚ΡƒΡŽ Π½Π° Ρ‚ΠΎΡ‡ΠΊΡƒ (ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, Π² зависимости ΠΎΡ‚ Π»ΠΎΠΊΠ°Π»ΠΈ) ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Число.

Π Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π»ΠΈ эти ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π² Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ 1Π‘?

Π”Π°, всС описанныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ (Ρ†ΠΈΠΊΠ»Ρ‹, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ строки, рСгулярныС выраТСния) ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Ρ‚ΠΎΠ½ΠΊΠΎΠΌ ΠΈ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅. РСгулярныС выраТСния Π² Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΈΠ»ΠΈ ΡΠΌΡƒΠ»ΡΡ†ΠΈΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π½ΠΎ синтаксис остаСтся Π΅Π΄ΠΈΠ½Ρ‹ΠΌ.