Увод:
ЈаваСцрипт је широко коришћен програмски језик и пружа неколико уграђених метода за манипулисање стринговима. Две од најчешће коришћених метода за претраживање стринга за одређени карактер или подниз су индекс() и Претрага() . Иако ове две методе могу изгледати сличне по функционалности, оне имају неколико кључних разлика. У овом чланку ћемо истражити разлике између индекОф() и сеарцх() у ЈаваСцрипт-у.
индекОф() Метод:
Тхе индекс() метода је уграђена ЈаваСцрипт функција која се користи за проналажење индекса првог појављивања подниза унутар датог низа. Овај метод враћа индекс првог појављивања наведеног подниза, почевши од почетка стринга. Ако подстринг није пронађен, метода се враћа -1 .
Синтакса:
Синтакса за коришћење индекс() метод је следећи:
string.indexOf(searchValue[, fromIndex])
овде, низ је стринг који треба претраживати, сеарцхВалуе је вредност за претрагу, и фромИндек је опциони параметар који специфицира позицију у низу где претрага треба да почне. Ако је фромИндек није обезбеђена, индекс() метода почиње претрагу од почетка стринга. Ако фромИндек је негативан вредност, претрага почиње од краја стринга.
Пример:
питхон // оператор
Узмимо пример да разумемо индекс() метод:
let str = 'JavaScript is a powerful programming language'; let index = str.indexOf('powerful'); console.log(index);
Излаз:
16
Објашњење:
Ево, индекОф() метода тражи прво појављивање речи 'моћан' у низу „ЈаваСцрипт је моћан програмски језик“ . Пошто је реч 'моћан' појављује се на индек 16 , метода се враћа 16 .
сеарцх() Метод:
Тхе метода претраге(). је такође уграђена ЈаваСцрипт функција која се користи за проналажење индекса првог знака подниза унутар датог низа. Овај метод враћа индекс првог појављивања наведеног подниза, почевши од почетка стринга. Ако подстринг није пронађен, метода се враћа -1 .
Синтакса:
Синтакса за коришћење метода претраге(). је као што следи:
string.search(regexp)
овде, низ је стринг који треба претраживати, и регекп је регуларни израз образац за тражење. Ако је регуларни израз образац је пронађен, тхе Претрага() метода враћа индекс првог знака подударања. Ако образац регуларног израза није пронађен, метода се враћа -1 .
Пример:
Узмимо пример да разумемо Претрага() метод:
let str = 'JavaScript is a powerful programming language'; let index = str.search(/powerful/); console.log(index);
Излаз:
16
Објашњење:
Ево, Претрага() метода тражи регуларни израз шаблон /моћан/ у низу „ЈаваСцрипт је моћан програмски језик“ . Пошто образац регуларног израза одговара речи 'моћан' , метода се враћа 16 .
Разлике између индекОф() и сеарцх():
Иако обоје индекс() и Претрага() методе се користе за тражење подниза унутар датог низа, имају неколико кључних разлика. Хајде да погледамо ове разлике једну поред друге:
индекОф() Метод | сеарцх() Метод |
---|---|
индекс() метода тражи наведени подстринг унутар датог низа. | Претрага() метода тражи образац регуларног израза унутар датог низа. |
Метода индекОф() враћа индекс првог појављивања наведеног подниза. | Метод сеарцх() враћа индекс првог знака подударања. |
Метод индекОф() не подржава регуларне изразе. | Метод сеарцх() подржава регуларне изразе. |
Метода индекОф() може прихватити опциони параметар фромИндек за почетак претраге из одређеног индекса. | Метод сеарцх() не прихвата опциони параметар за покретање претраге из одређеног индекса. |
Метода индекОф() је бржа од методе сеарцх() јер не подржава регуларне изразе. | Метод сеарцх() је спорији од методе индекОф() јер подржава регуларне изразе. |
Метод индекОф() је осетљив на велика и мала слова. | Метод сеарцх() је такође подразумевано осетљив на велика и мала слова, али се може учинити неосетљивим на велика и мала слова помоћу /и флаг у обрасцу регуларног израза. |
Метода индекОф() се широко користи за једноставне претраге стрингова. | Метод сеарцх() се широко користи за сложено подударање шаблона помоћу регуларних израза. |
Закључак:
У закључку, обоје индекс() и Претрага() методе су корисне за тражење подниза унутар датог низа. Међутим, они имају неколико кључних разлика које их чине погодним за различите случајеве употребе. Метода индекОф() је бржа и погоднија за једноставне претраге стрингова, док метода сеарцх() подржава регуларне изразе и погоднија је за сложено подударање шаблона. Важно је одабрати одговарајући метод на основу специфичних захтева вашег програма.