CodeKitHub
Алати за текст

Провера заграда и облих заграда

Poslednje ažurirano:

Налепите код или текст и овај алат скенира сваки пар ( ) [ ] { }, пријављујући тачно које заграде нису затворене, нису отворене или се не подударају — са бројем реда и колоне за сваки проблем.

Šta je ovaj alat?

Провера заграда скенира текст знак по знак, прати сваку отворену заграду ( [ { помоћу стека и упарује је са следећом затвореном заградом ) ] } на коју наиђе. Ако се затворена заграда не поклапа са последњом незатвореном отвореном заградом, или отворена заграда никада није затворена, или се затворена заграда појави а нема шта да затвори, то се означава као проблем са тачном позицијом.

Ово је обично секвенцијално скенирање, а не потпуни парсер језика — ради на исти начин без обзира на то да ли је налепљени садржај JavaScript, Python, JSON или само обичан текст, што га чини корисним у сваком језику или формату који користи заграде.

Zašto ga koristiti?

  • Пријављује тачан ред и колону сваке незатворене или неусклађене заграде.
  • Ради са било којим језиком или текстом — није везан за одређену синтаксу.
  • Разликује три врсте проблема: незатворена отворена заграда, неусклађена затворена заграда и погрешан тип заграде.
  • Тренутна, локална обрада — ништа се не отпрема на сервер.
  • Бесплатно, без регистрације, без ограничења величине.

Kako se koristi

  1. Налепите свој код или текст у поље за унос.
  2. Кликните на дугме Провери заграде.
  3. Прегледајте листу проблема, сваки са бројем реда и колоне, или погледајте потврду да се све подудара.

Primer

Unos

function foo() {
  return [1, 2, (3];
}

Rezultat

Погрешан тип заграде: ] на реду 2, колони 18; Погрешан тип заграде: } на реду 3, колони 1; Незатворена отворена заграда: { на реду 1, колони 17

Заграда ] у реду 2 је требало да затвори заграду ( отворену у колони 15, а не ранију заграду [ — ово је управо она врста грешке (затворена заграда погрешног типа) коју је лако превидети голим оком у дужој датотеци.

Уобичајене употребе

  • Отклањање грешке типа „Unexpected token” или „Unexpected end of input” у JavaScript-у, JSON-у или Python-у без пажљивог поновног читања целе датотеке.
  • Провера ручно написаног JSON исечка ради проналажења сувишне или недостајуће витичасте заграде пре него што га налепите у конфигурациону датотеку.
  • Провера угнежђених облих заграда у дугачком математичком изразу или формули.
  • Проналажење случајно заостале заграде из копирања и лепљења приликом прегледа кода.

Često postavljana pitanja

Да ли ова провера обухвата и наводнике или ознаке, или само заграде?

Само три пара заграда: обле заграде ( ), угласте заграде [ ] и витичасте заграде { }. Наводници и HTML/XML ознаке се не прате.

Која је разлика између ове три врсте проблема?

„Незатворена отворена заграда” значи да отворена заграда никада није затворена до краја текста. „Неусклађена затворена заграда” значи да се затворена заграда појавила без одговарајуће отворене заграде пре ње. „Погрешан тип заграде” значи да се затворена заграда појавила, али је погрешног типа за последњу отворену заграду — на пример, затварање [ помоћу ).

Да ли алат препознаје да заграде унутар стринга или коментара не би требало да се броје?

Не — ово је обично скенирање знакова, а не парсер свестан језика, тако да не препознаје стринг литерале или коментаре. Знак заграде унутар навода или коментара се и даље броји. За потпуно тачне резултате на стварним изворним датотекама, прво уклоните стрингове/коментаре или користите уграђено подударање заграда које препознаје синтаксу у вашем едитору.

Да ли се мој код негде отпрема?

Не. Провера се обавља као локални JavaScript у вашем прегледачу; ништа се не шаље на сервер.