Шта су регуларни изрази на Јави?
У Јава , Регек или Регулар Екпрессион је интерфејс апликационог програма који помаже у дефинисању обрасца у циљу претраживања, манипулације и уређивања струна. Јава регуларни изрази се широко користе у валидацији лозинки и е-порука. Ове изразе пружа пакет јава.утил.регек и састоји се од 1 интерфејса и 3 класе.
Три разреда су:
- Узорак: Помаже у дефинисању образаца.
- Матцхер: Кориштење образаца помаже у обављању операција подударања.
- ПаттернСинтакЕкцептион: Помаже у указивању на синтаксу.
Јава Регек има једно сучеље познато као МатцхРесултИнтерфаце које помаже у одређивању резултата подударања регуларног израза.
Синтакса регуларног изражавања у Јави
Сада да видимо како уз програм написати регуларни израз на Јави.
Шифра:
//Java program to demonstrate regular expressions
import java.util.regex.*;
public class RegExamples (
public static void main(String args())(
String A = " Happiness is " + " within yourself";
String B = ".*within.*";
// checks whether the string A contains the word 'within' and stores the result in matchcheck
boolean matchcheck = Pattern.matches(B, A);
//prints the result
System.out.println("Is there any string 'within' in the text ? \n " + matchcheck);
) )
Излаз:
Уобичајено кориштене методе у регуларним изразима
Постоје 3 уобичајена метода у регуларним изразима. Су,
1. Методе индексирања
Индексне методе нуде вриједности индекса које помажу у прецизном приказивању гдје је подударање пронађено у низу датом као улаз.
Метод | Опис |
почетак() | Враћа се почетни индекс претходног меча. |
старт (инт група) | С обзиром на претходну операцију меча група се ухваћа и враћа. |
крај() | Поништавање након подударања са задњим знаком се враћа. |
Крај (инт група) | С обзиром на претходну операцију меча група, накнадни унос се снима и надокнађује након што се врати његов последњи знак. |
2. Методе проучавања
Методе студије провјеравају низ који је дат као улаз и враћа се Боолеова вриједност која показује да ли је узорак пронађен или не.
Метод | Опис |
гледа у() | Успоредите редослед наведен као улаз са узорком с почетка региона. |
финд () | Проналази следећу секвенцу редоследа дат као унос против обрасца са почетка региона. |
пронађи (инт старт) | Поново поставља матцхер и затим проналази следећу секвенцу секвенце која је дата као улаз према обрасцу из наведеног индекса. |
утакмице () | Одговара садржају према обрасцу. |
3. Методе замене
Методе које се користе за замену текста у низу.
Метод | Опис |
аппендРеплацемент (СтрингБуффер с, замена низа) | Нетерминални корак додавања и замјене биће имплементиран. |
аппендТаил (СтрингБуффер с) | Проводи се корак додавања и замјене терминала. |
субституАлл (замена низа) | Замените сву секвенцу која је дата као улаз који одговара узорку замјенским низом. |
куотеРеплацемент (стрингови) | Враћа се дословни замјенски низ за споменути низ. |
Замените прво (замена струне) | Замените први низ у низу наведеном као улаз који одговара обрасцу замјенским низом. |
Како дефинисати регуларни израз у Јави?
Постоји неколико начина на које се може дефинисати правилан израз. Су:
1. Литерали
Претпоставимо да у тексту „хаи“ треба тражити низ „хаи“. Може се обавити помоћу синтаксе.
Pattern.matches("hai", "hai")
2. Класе карактера
Одговара сваком поједином знаку у тексту датом као унос против више дозвољених знакова у класи знакова. Следе различити конструкти класе.
Цласс Цласс | Објашњење |
(пкр) | Подудара текст ако садржи или п, к или р и требао би бити само једном. |
(пкр) | означава негацију и због тога су овде узети појединачни знакови осим п, к или р. |
(а-зА-З) | а до з и од А до З сматрају се. |
(оглас (пс)) | а до д, или п до с. |
(а-дм-п) | Спој оба опсега. |
(аз && (пкр)) | а до з и (п, к или р). |
(аз && (пк)) | а до з и такође, п, к се не узимају у обзир. |
(ад-з) | Изводи одузимање. |
(аз && (мп)) | а до з а не м до п. |
3. Метацхарацтерс
Метакарактери се понашају попут кратких кодова у регуларном изразу. Следе неки од уобичајених метаграфа.
Регуларни израз | Објашњење |
\ д | Било која цифра од 0 до 9. Може се записати и као (0-9). |
\ Д | Било која цифра од 0 до 9. Може се записати и као (0-9). |
\ с | Знак белог простора или (\ т \ н \ к0Б \ ф \ р). |
\ С | Није знак белог простора или (\ с). |
\ в | Карактер речи или (а-зА-З_0-9). |
\ В | Знак који није реч или (\ в). |
\ б | Граница речи. |
\ Б | Граница без речи. |
4. Квантификатори
Квантификатори спомињу број појављивања сваког знака који се подударају са низом.
Регуларни израз | Објашњење |
а? | Јавља се једном или уопште није. |
А * | А догађа се 0 или више пута. |
А + | А догађа се 1 или више пута. |
А (н) | А догађа се тачно н пута. |
А (н, ) | А догађа се н или више од тога. |
А (н, м) | А се јавља најмање н пута, али не сме бити дуже од м пута. |
Како креирати регуларну експресију на Јави?
Сада да видимо програм јава са горе поменутим регуларним изразима.
Шифра:
//Java program to demonstrate regular expressions
import java.util.regex.*;
public class RegExamples (
public static void main(String args())(
String str="hai";
// Returns true if string 1 matches string 2
System.out.println("Returns true if 'hai' matches 'Hai' :"+
Pattern.matches(str, "Hai")); //False
//Returns true if Hai or hai matches parameter 2
System.out.println("Returns true if 'Hai' or 'hai' matches 'Hai' : "+
Pattern.matches("(Hh)ai", "Hai")); //True
// Returns true if the string matches exactly "ann" or "Ann" or "jak" or "Jak"
System.out.println("Returns true if the string matches exactly 'ann' or 'Ann' or 'jak' or 'Jak' with 'Ann' : "+
Pattern.matches("(aA)nn|(jJ)ak", "Ann"));//True
//returns true if the string contains "with" at any place in the string
System.out.println("returns true if the string contains 'with' in the string 'within' : " +
Pattern.matches(".*with.*", "within"));//True
// returns true if the '9448anna' does not have number in the beginning
System.out.println( "returns true if the '9448anna' does not have number in the beginning : "+
Pattern.matches("^(^\\d).*", "9448anna")); //False
System.out.println("returns true if the '9448anna' does not have number in the beginning : " +
Pattern.matches("^(^\\d).*", "anna9448")); //True
)
)
Излаз:
Закључак
Јава регуларни изрази се широко користе за апликације у стварном времену, као што су провера лозинке и е-поште. Ови изрази су АПИ-ји који дефинирају обрасце и нуде претраживање, уређивање и неколико других операција у низу.
Препоручени чланци
Ово је водич за регуларне изразе на Јави. Овдје ћемо разговарати о томе како креирати, како дефинирати и најчешће кориштене методе регуларних израза у јави. Такође можете погледати следеће чланке да бисте сазнали више -
- Топ 3 најбољих компајлера на Јави
- Редовни изрази у ЈаваСцрипт-у - Својства и методи
- Јава развој апликација
- Арраи Методе у Јави са примерима
- Регек функције у Питхону (пример)