Π Π°Π±ΠΎΡ‚Π° с тСкстовыми Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² конфигурациях 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ часто сопряТСна с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ «очистки» строк ΠΎΡ‚ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚ΠΎΠ², Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅ ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… источников ΠΈΠ»ΠΈ Π²Π²ΠΎΠ΄Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ. Π›ΠΈΡˆΠ½ΠΈΠ΅ символы форматирования ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ€ΡƒΡˆΠ°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ сравнСния, ΡΠ±ΠΈΠ²Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ поиска ΠΈ ΠΏΠΎΡ€Ρ‚ΠΈΡ‚ΡŒ внСшний Π²ΠΈΠ΄ ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ.

НаиболСС распространСнной ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ являСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π΅Π»ΡŒΠ½Ρ‹Ρ… символов (space), табуляций ΠΈΠ»ΠΈ Π½Π΅Ρ€Π°Π·Ρ€Ρ‹Π²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² (non-breaking space), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ Π³Π»Π°Π·Ρƒ, Π½ΠΎ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹ для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ встроСнныС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ алгоритмичСскиС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ для привСдСния строк ΠΊ каноничСскому Π²ΠΈΠ΄Ρƒ.

ПониманиС Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ ΠΈ «тСхничСскими» ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для написания Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ ΡƒΠΏΠ°Π΄Π΅Ρ‚ ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Excel ΠΈΠ»ΠΈ CSV-Ρ„Π°ΠΉΠ»ΠΎΠ².

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8 прСдоставляСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π½Π°Π±ΠΎΡ€ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для манипуляций со строками. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΌ инструмСнтом для удалСния ΠΊΡ€Π°ΠΉΠ½ΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² являСтся сСмСйство Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ с прСфиксом Π‘ΠΎΠΊΡ€. Они ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π³Ρ€Π°Π½ΠΈΡ†Π°ΠΌΠΈ строки ΠΈ Π½Π΅ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°ΡŽΡ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ словами.

  • πŸš€ Π‘ΠΎΠΊΡ€Π›(Π‘Ρ‚Ρ€ΠΎΠΊΠ°) β€” удаляСт всС ΠΏΡ€ΠΎΠ±Π΅Π»ΡŒΠ½Ρ‹Π΅ символы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ слСва ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π²ΠΈΠ΄ΠΈΠΌΠΎΠ³ΠΎ символа.
  • πŸš€ Π‘ΠΎΠΊΡ€ΠŸ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°) β€” выполняСт Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, Π½ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ с ΠΏΡ€Π°Π²ΠΎΠΉ стороны строки.
  • πŸš€ Π‘ΠΎΠΊΡ€(Π‘Ρ‚Ρ€ΠΎΠΊΠ°) β€” ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ функция, которая ΠΎΠ±Ρ€Π΅Π·Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ сразу с ΠΎΠ±ΠΎΠΈΡ… ΠΊΠΎΠ½Ρ†ΠΎΠ².

ИспользованиС этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ способом очистки, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ядра ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Однако стоит ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ символы с ΠΊΠΎΠ΄ΠΎΠΌ 32 (ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ±Π΅Π») ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ символы табуляции Π½Π° краях.

Если ваша Π·Π°Π΄Π°Ρ‡Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² простой ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… для Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° экран ΠΈΠ»ΠΈ сохранСния Π² Π±Π°Π·Ρƒ Π±Π΅Π· Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ структуры тСкста, использованиС Π‘ΠΎΠΊΡ€() Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ. Π­Ρ‚ΠΎ стандарт Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² Ρ‚ΠΈΠΏΠ° «НаимСнованиС» ΠΈΠ»ΠΈ Β«ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉΒ».

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ сСмСйства Π‘ΠΎΠΊΡ€ Π½Π΅ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, находящиСся Π²Π½ΡƒΡ‚Ρ€ΠΈ строки (ΠΌΠ΅ΠΆΠ΄Ρƒ словами). Для удалСния Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹.

πŸ’‘

ВсСгда сохраняйтС ΠΈΡΡ…ΠΎΠ΄Π½ΡƒΡŽ строку Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ±Ρ€Π΅Π·ΠΊΠΈ, Ссли эти Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π²Π°ΠΌ для Π°ΡƒΠ΄ΠΈΡ‚Π° ΠΈΠ»ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ всСх ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ строки

Часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ очисткС Π½ΠΎΠΌΠ΅Ρ€Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°, ИНН ΠΈΠ»ΠΈ Π°Ρ€Ρ‚ΠΈΠΊΡƒΠ»Π° Ρ‚ΠΎΠ²Π°Ρ€Π°, Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ с ошибками. Для этого встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π‘ΠΎΠΊΡ€ нСдостаточно, ΠΈ приходится ΠΏΡ€ΠΈΠ±Π΅Π³Π°Ρ‚ΡŒ ΠΊ использованию Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ.

Алгоритм дСйствий ΠΏΡ€Π΅Π΄Π΅Π»ΡŒΠ½ΠΎ прост: ΠΌΡ‹ замСняСм всС вхоТдСния символа ΠΏΡ€ΠΎΠ±Π΅Π»Π° Π½Π° ΠΏΡƒΡΡ‚ΡƒΡŽ строку. Π­Ρ‚ΠΎ позволяСт Β«ΡΠΊΠ»Π΅ΠΈΡ‚ΡŒΒ» ΠΎΡΡ‚Π°Π²ΡˆΠΈΠ΅ΡΡ символы, удаляя Π»ΡŽΠ±Ρ‹Π΅ Ρ€Π°Π·Ρ€Ρ‹Π²Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ тСкста. Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ эффСктивСн для Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ².

Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ° = " 1Π‘ : ΠŸΡ€Π΅Π΄ ΠΏΡ€ΠΈ ятиС ";

ΠžΡ‡ΠΈΡ‰Π΅Π½Π½Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ° = Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ(Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ°, " ", "");

// Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: "1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅"

Π’Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Π° ΠΊ Ρ‚ΠΈΠΏΡƒ ΠΏΡ€ΠΎΠ±Π΅Π»Π°. Если Π² тСкстС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π½Π΅Ρ€Π°Π·Ρ€Ρ‹Π²Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ (ΠΊΠΎΠ΄ 160), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ часто ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ ΠΈΠ· Π²Π΅Π±-Ρ„ΠΎΡ€ΠΌ ΠΈΠ»ΠΈ Word, обычная Π·Π°ΠΌΠ΅Π½Π° ΠΏΡ€ΠΎΠ±Π΅Π»Π° Π½Π΅ сработаСт. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях трСбуСтся ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Π·Π°ΠΌΠ΅Π½Π° спСцсимволов.

Для слоТных случаСв, ΠΊΠΎΠ³Π΄Π° Π² строкС ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ мноТСствСнныС ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ подряд, Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ эффСктивСн, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ удаляСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ экзСмпляр символа нСзависимо ΠΎΡ‚ Π΅Π³ΠΎ количСства.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° качСства очистки Π΄Π°Π½Π½Ρ‹Ρ…

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

Π—Π°ΠΌΠ΅Π½Π° мноТСствСнных ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π½Π° ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ удалСния, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ тСкста часто Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ сохранСния структуры ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΠΏΡ€ΠΈ этом Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ «мусор» Π² Π²ΠΈΠ΄Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² подряд. Вакая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ‚ΠΈΠΏΠΈΡ‡Π½Π° для Π΄Π°Π½Π½Ρ‹Ρ…, скопированных ΠΈΠ· PDF-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ старых тСкстовых Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ².

РСшСниС Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² цикличСской Π·Π°ΠΌΠ΅Π½Π΅ Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π½Π° ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π² строкС Π½Π΅ останСтся ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ ΠΈΠ· Π΄Π²ΡƒΡ… ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ². Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ», Ρ‚Π°ΠΊ ΠΈ Ρ‡Π΅Ρ€Π΅Π· рСкурсивный Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π°ΠΌΠ΅Π½Ρ‹.

  • πŸ”„ ЦикличСский ΠΌΠ΅Ρ‚ΠΎΠ΄: ΠΏΠΎΠΊΠ° БтрНайти(Π‘Ρ‚Ρ€ΠΎΠΊΠ°, " ") > 0, выполняСм Π·Π°ΠΌΠ΅Π½Ρƒ.
  • πŸ”„ РСгулярныС выраТСния: использованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° РСгулярноСВыраТСниС для поиска шаблона \s+.
  • πŸ”„ Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ соСдинСниС: Ρ€Π°Π·Π±ΠΈΠ²ΠΊΠ° строки ΠΏΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Ρƒ ΠΈ сборка Ρ‡Π΅Ρ€Π΅Π· Π‘Ρ‚Ρ€Π‘ΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ.

ИспользованиС рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² 1Π‘ являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹ΠΌ инструмСнтом для Ρ‚Π°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Оно позволяСт ΠΎΠ΄Π½ΠΎΠΉ строкой ΠΊΠΎΠ΄Π° привСсти тСкст Π² ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ Π²ΠΈΠ΄, ΡƒΠ΄Π°Π»ΠΈΠ² лишниС ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, табуляции ΠΈ пСрСносы строк, Π·Π°ΠΌΠ΅Π½ΠΈΠ² ΠΈΡ… Π½Π° ΠΎΠ΄ΠΈΠ½ стандартный ΠΏΡ€ΠΎΠ±Π΅Π».

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ использовании Ρ†ΠΈΠΊΠ»Π° Π·Π°ΠΌΠ΅Π½Ρ‹ Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ условиС Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ бСсконСчного Ρ†ΠΈΠΊΠ»Π° Π² случаС ошибок Π»ΠΎΠ³ΠΈΠΊΠΈ.

πŸ“Š Какой ΠΌΠ΅Ρ‚ΠΎΠ΄ очистки Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅ всСго?
Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ
РСгулярныС выраТСния
Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ Π‘ΠΎΠΊΡ€Π›/Π‘ΠΎΠΊΡ€ΠŸ
Π’Π½Π΅ΡˆΠ½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Π Π°Π±ΠΎΡ‚Π° со ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ символами ΠΈ табуляциСй

ВСкстовыС Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, Π½ΠΎ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ символы, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ табуляция (Π‘ΠΈΠΌΠ².Π’Π°Π±), ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ строки (Π‘ΠΈΠΌΠ².ПБ) ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ (Π‘ΠΈΠΌΠ².Π’Πš). Для ΠΏΠΎΠ»Π½ΠΎΠΉ очистки строки ΠΎΡ‚ форматирования Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ вСсь спСктр ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… символов.

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

Π’ΠΈΠΏ символа ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² 1Π‘ ОписаниС
ΠŸΡ€ΠΎΠ±Π΅Π» " " Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ±Π΅Π» (ΠΊΠΎΠ΄ 32)
Вабуляция Π‘ΠΈΠΌΠ².Π’Π°Π± Π“ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Π°Ρ табуляция
ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ строки Π‘ΠΈΠΌΠ².ПБ ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π½ΠΎΠ²ΡƒΡŽ строку
НСразрывный ΠΏΡ€ΠΎΠ±Π΅Π» Π‘ΠΈΠΌΠ².НПП ΠŸΡ€ΠΎΠ±Π΅Π», ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΠΉ пСрСнос слова

Для комплСксной очистки рСкомСндуСтся ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ массив символов-Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΏΠΎ Π½Π΅ΠΌΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π·Π°ΠΌΠ΅Π½Ρ‹. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ строка Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡ΠΈΡ‰Π΅Π½Π° ΠΎΡ‚ всСх Π²ΠΈΠ΄ΠΎΠ² Β«Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠ³ΠΎ мусора», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ ΡΠΎΠΏΠΎΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ΠΎΠ².

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ символу Π‘ΠΈΠΌΠ².НПП (Π½Π΅Ρ€Π°Π·Ρ€Ρ‹Π²Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ±Π΅Π»). Он Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ Π½Π΅ отличаСтся ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΠ΄, поэтому функция Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°, " ", "") Π΅Π³ΠΎ Π½Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚. Явная Π·Π°ΠΌΠ΅Π½Π° Π‘ΠΈΠΌΠ².НПП Π½Π° пустоту ΠΈΠ»ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ±Π΅Π» ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π° ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²Π΅Π±-Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Как Π½Π°ΠΉΡ‚ΠΈ ΠΊΠΎΠ΄ скрытого символа?

Если Π²Ρ‹ Π½Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ символ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚, ΠΌΠΎΠΆΠ½ΠΎ вывСсти ΠΊΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ символа строки Π² Ρ†ΠΈΠΊΠ». Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ КодБимвола(Π‘Ρ‚Ρ€ΠΎΠΊΠ°, ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ) для поиска Π°Π½ΠΎΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ ΠΊΠΎΠ΄ΠΎΠ² Π±ΡƒΠΊΠ² ΠΈ Ρ†ΠΈΡ„Ρ€.

Алгоритмы очистки для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… массивов Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ тысяч строк ΠΈΠ· внСшнСго Ρ„Π°ΠΉΠ»Π°, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° становится критичСским Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ. ΠœΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ созданиС Π½ΠΎΠ²Ρ‹Ρ… строк Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ сущСствСнным Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌ ΠΈΠ·-Π·Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ сборщика мусора ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Π’ Ρ‚Π°ΠΊΠΈΡ… случаях рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Ρ‚ΠΈΠΏΠ° Π‘ΡƒΡ„Π΅Ρ€Π”Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ…Π”Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ со строками максимально эффСктивно, минимизируя количСство ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ. Однако для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ оптимизация Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π·Π°ΠΌΠ΅Π½Ρ‹ остаСтся достаточной.

Если Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ для Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½ΠΎΠ³ΠΎ задания, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ «мусора» Π² Π½ΠΎΡ‡Π½ΠΎΠ΅ врСмя, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹. ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° тСкстовых ΠΏΠΎΠ»Π΅ΠΉ Π² тысячах Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ Π»ΠΈΠΌΠΈΡ‚ΠΎΠ² Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Для ускорСния процСсса ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅: ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ очистки Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ‚Π΅ΠΌ строкам, Π³Π΄Π΅ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Ρ‹ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ БтрНайти ΠΊΠ°ΠΊ условиС Π²Ρ…ΠΎΠ΄Π° Π² Π±Π»ΠΎΠΊ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ ΠΈ Ρ‚ΠΈΠΏΠ° запуска (Ρ‚ΠΎΠ½ΠΊΠΈΠΉ/толстый ΠΊΠ»ΠΈΠ΅Π½Ρ‚). ВсСгда тСстируйтС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π½Π° ΠΊΠΎΠΏΠΈΠΈ Π±Π°Π·Ρ‹.

πŸ’‘

ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Π°Ρ стратСгия для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов β€” ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ строк Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄ запуском тяТСлых ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ Π·Π°ΠΌΠ΅Π½Ρ‹.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ сниппСты

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ всС рассмотрСнныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. Она ΠΎΠ±Ρ€Π΅Π·Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΏΠΎ краям, замСняСт мноТСствСнныС ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π° ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Π΅ ΠΈ удаляСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы форматирования.

ИспользованиС Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ позволяСт ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ очисткС Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎ всСй ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС, Ссли трСбования бизнСса измСнятся.

Ѐункция ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΡƒ(Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ°) Экспорт

// 1. Π—Π°ΠΌΠ΅Π½Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… символов Π½Π° ΠΏΡ€ΠΎΠ±Π΅Π»

ВСкст = Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ(Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ°, Π‘ΠΈΠΌΠ².Π’Π°Π±, " ");

ВСкст = Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ(ВСкст, Π‘ΠΈΠΌΠ².НПП, " ");

// 2. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ мноТСствСнных ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ²

Пока БтрНайти(ВСкст, " ") > 0 Π¦ΠΈΠΊΠ»

ВСкст = Π‘Ρ‚Ρ€Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ(ВСкст, " ", " ");

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

// 3. ΠžΠ±Ρ€Π΅Π·ΠΊΠ° ΠΊΡ€Π°Π΅Π²

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π‘ΠΎΠΊΡ€(ВСкст);

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

Π”Π°Π½Π½Ρ‹ΠΉ сниппСт ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² ΠΎΠ±Ρ‰Π΅ΠΉ ΠΌΠΎΠ΄ΡƒΠ»Π΅ с ΠΏΡ€Π°Π²ΠΎΠΌ доступа Β«ΠšΠ»ΠΈΠ΅Π½Ρ‚-Π‘Π΅Ρ€Π²Π΅Ρ€Β», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΈΠ· Ρ„ΠΎΡ€ΠΌ, Ρ‚Π°ΠΊ ΠΈ ΠΈΠ· сСрвСрных ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. Π­Ρ‚ΠΎ обСспСчиваСт Π΅Π΄ΠΈΠ½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° всСх уровнях прилоТСния.

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π»ΡŽΠ±Ρ‹Π΅ измСнСния Π² структурС Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, особСнно Ссли очистка влияСт Π½Π° историчСскиС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ.

πŸ’‘

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ количСства ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Ρ… строк ΠΏΡ€ΠΈ массовой очисткС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ ΠΌΠ°ΡΡˆΡ‚Π°Π± ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

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

Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ, Π½Π΅ трогая тСкст?

Для этого потрСбуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ рСгулярныС выраТСния с шаблоном, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡ‰Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² контСкстС Ρ†ΠΈΡ„Ρ€, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ (\d)\s+(\d), ΠΈ Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ… Π½Π° $1$2. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΌΠΈ функциями 1Π‘ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ΠΎΡ‡Π½ΡƒΡŽ Π·Π°ΠΌΠ΅Π½Ρƒ ΠΏΠΎ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ «сосСдства» слоТно Π±Π΅Π· Ρ€Π°Π·Π±ΠΎΡ€Π° строки посимвольно.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ функция Π‘ΠΎΠΊΡ€Π› Π½Π΅ ΡƒΠ±ΠΈΡ€Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π΅Π» Π² Π½Π°Ρ‡Π°Π»Π΅ строки?

Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, Π² Π½Π°Ρ‡Π°Π»Π΅ строки находится Π½Π΅ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ±Π΅Π» (ΠΊΠΎΠ΄ 32), Π° Π½Π΅Ρ€Π°Π·Ρ€Ρ‹Π²Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ±Π΅Π» (ΠΊΠΎΠ΄ 160) ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ символ. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π‘ΠΈΠΌΠ².НПП Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ±Π΅Π» ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Π‘ΠΎΠΊΡ€Π›.

МоТно Π»ΠΈ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π² запросС ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…?

Π’ языкС запросов 1Π‘ Π½Π΅Ρ‚ встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для удалСния ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ строки Ρ‚ΠΈΠΏΠ° TRIM Π² SQL. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π‘ΠΎΠΊΡ€Π›, Π‘ΠΎΠΊΡ€ΠŸ доступны, Π½ΠΎ для удалСния Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π½ΠΎΡΠΈΡ‚ΡŒ Π² ΠΊΠΎΠ΄ 1Π‘ послС получСния Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ.

Как Π½Π°ΠΉΡ‚ΠΈ всС строки с лишними ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ Π² справочникС?

НСобходимо Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ, которая ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎ всСм элСмСнтам справочника ΠΈ сравниваСт исходноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ примСнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ очистки. Если значСния Π½Π΅ Ρ€Π°Π²Π½Ρ‹ β€” элСмСнт выводится Π² ΠΎΡ‚Ρ‡Π΅Ρ‚ для Ρ€ΡƒΡ‡Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈΠ»ΠΈ автоматичСской записи.