# Сүзгілер мен ауыстырулардағы тұрақты өрнектер

Language: kk
Canonical: <https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter>
Published: 2026-11-11T21:48:58+00:00
Modified: 2026-11-11T21:48:59+00:00

Тұрақты өрнек қандай мәтінді табу керегін сипаттайды. Бір нақты тіркестің орнына үлгі бересіз: мысалы, «Өтінім» сөзі және одан кейінгі кез келген нөмір. Нөмір әр хабарламада өзгеруі мүмкін, ал үлгі қажетті үзіндіні бәрібір табады.

Осылайша күндерді, сілтемелерді, жеке сөздерді, тұтас жолдарды және ережемен сипаттауға болатын кез келген дерлік мәтін тіркесін іздеуге болады. Бірнеше қарапайым таңба өзгеретін мәндерді ескеруге, әртүрлі нұсқалардан таңдауға және қажетсізін өткізіп жіберуге мүмкіндік береді. Мұндай іздеудің мүмкіндіктері сөз бойынша кәдімгі іздеуден әлдеқайда кең.

![Үлгі бойынша сәйкес мәтін үзінділерін іздеу](<https://flowin.click/wp-content/uploads/2026/10/cf-da8cc01b43e113428f944f35.webp>)

Мақала мазмұны

- [Тұрақты өрнектердің мүмкіндіктері](<https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter#headline-6-324>)
- [Тұрақты өрнекті оқу жолы](<https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter#reading-pattern>)
- [Тұрақты өрнектер синтаксисі](<https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter#headline-11-324>)
- [FLOWIN жүйесіндегі іздеу баптаулары](<https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter#flowin-flags>)
- [Дайын үлгілер](<https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter#headline-45-640>)
- [Жиі қойылатын сұрақтар](<https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter#faq>)

## Тұрақты өрнектердің мүмкіндіктері

FLOWIN сүзгілері мен ауыстыруларында тұрақты өрнектерге қолдау көрсетілуі мына мүмкіндіктерді береді:

- Хабарламалардың басына немесе соңына кез келген мәтінді қосу.
- Сілтемелері бар хабарламаларды сүзгілеу.
- Көшірілетін хабарламалардан сілтемелерді, телефондарды, электрондық поштаны және басқа байланыс ақпаратын жою.
- Ұзын хабарламаларды немесе керісінше, тек қысқаларын сүзгілеу.

«Regexp» режимі

Сүзгі немесе ауыстыру баптауларында «Іздеу» өрісінің жанындағы «Regexp» режимі тұрақты өрнек арқылы іздеуді қосады. Үлгінің өзі осы өрісте беріледі. Ережені жасау және оны жөнелтуге қолдану мына нұсқаулықтарда сипатталған: [сүзгілер](<https://flowin.click/kk/articles/zhoeneltiletin-khattardy-suezgileu>) және [ауыстырулар](<https://flowin.click/kk/articles/zhoeneltiletin-khattardaghy-auystyrular>).

[![Ауыстыру баптауларындағы Іздеу өрісінің жанындағы Regexp режимі](<https://flowin.click/wp-content/uploads/2026/11/cf-7c7aeaeb6ffcdb3e2283bcb4.webp>)](<https://flowin.click/wp-content/uploads/2026/11/cf-7c7aeaeb6ffcdb3e2283bcb4.webp>)

Ауыстыру баптауларындағы «Regexp» режимі.

## Тұрақты өрнекті оқу жолы

Алдымен мына үлгіні алайық: ` Өтінім №\d+ `. Нөмірлері әртүрлі болса да, ол ` Өтінім №125 ` және ` Өтінім №8072 ` мәндерін табады. Оны солдан оңға қарай оқып көрейік:

- ` Өтінім № ` дәл осы әріптерді, бос орынды және нөмір белгісін іздейді.
- ` \d ` 0-ден 9-ға дейінгі кез келген цифрды білдіреді.
- ` + ` осындай бір немесе бірнеше цифрдың қатар келуін талап етеді.

Табылған үзінді сәйкестік деп аталады. Мысалы, ` Өтінім №125 қабылданды ` хабарламасындағы сәйкестік ` Өтінім №125 ` болады, ал ` қабылданды ` сөзі оның сыртында қалады. Сүзгіде сәйкестік хабарламаның шартқа сай келетінін анықтауға көмектеседі; ауыстыруда ол қай үзіндіні өзгерту керегін көрсетеді.

Үлгідегі кәдімгі әріптер мен бос орындар қалай жазылса, солай ізделеді. Арнайы таңбалар ережелерді белгілейді. Төменде негізгі белгілер түсіндірілген, содан кейін әртүрлі тапсырмаға арналған дайын мысалдар жиналған.

## Тұрақты өрнектер синтаксисі

Тұрақты өрнектерді қолдана бастау үшін синтаксисті білу, яғни белгілі бір таңбалардың нені білдіретінін түсіну керек.

### Негізгі таңбалар

- ` ^ ` мәтіннің басын білдіреді.
- ` $ ` мәтіннің соңын білдіреді.
- ` . ` кез келген таңбаға, соның ішінде жаңа жолға сәйкес келеді.
- ` \d ` 0-ден 9-ға дейінгі цифрға сәйкес келеді.
- ` \w ` латын әрпіне, цифрға немесе астын сызу белгісіне сәйкес келеді.
- ` \n ` жаңа жолды білдіреді.
- ` \t ` табуляцияны білдіреді.
- ` \s ` кәдімгі бос орынға, табуляцияға, жаңа жолға, каретканы қайтаруға немесе бетті ауыстыруға сәйкес келеді.
- ` \b ` сөз шекарасын, мысалы, әріп пен бос орын арасын тексереді. Сәйкестікке таңбаның өзін қоспайды.

### Сандық таңбалар

Сандық таңбалар алдында тұрған таңбаның немесе топтың неше рет қайталанатынын көрсетеді. Топ дөңгелек жақшаларға алынған бірнеше таңбаны біріктіреді.

- ` * ` 0 немесе одан көп рет қайталануды білдіреді.
- ` + ` 1 немесе одан көп рет қайталануды білдіреді.
- ` ? ` 0 немесе 1 рет қайталануды білдіреді.
- ` {5} ` дәл 5 рет қайталануды білдіреді.
- ` {1,5} ` 1-ден 5 ретке дейін қайталануды білдіреді.
- ` {1,} ` 1 немесе одан көп рет қайталануды білдіреді.
- ` {0,5} ` 0-ден 5 ретке дейін қайталануды білдіреді.

Мысалы:

- ` a+ ` мына нұсқаларға сәйкес келеді: ` a `, ` aa `, ` aaa ` және т.б.
- ` .* ` кез келген мәтінге, тіпті бос мәтінге де сәйкес келеді.
- ` аб{3} ` мынаған сәйкес келеді: ` аббб `.

### Топтар

Дөңгелек жақшалар ` ( ) ` таңбаларды топқа біріктіреді. Топтар көбіне [сандық таңбалармен](<https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter#quantifiers>) немесе ` | ` тік сызығымен қолданылады. Ол логикалық НЕМЕСЕ амалын білдіреді.

Мысалы:

- ` ((Bob)|(Alice)) ` мына екі нұсқаға да сәйкес келеді: ` Bob ` және ` Alice `.
- ` (abc){3} ` мынаған сәйкес келеді: ` abcabcabc `.

### Таңбалар жиыны

Таңбалар жиынын беру үшін мына шаршы жақшалар қолданылады: ` [ ] `. Олардың ішіне таңбаларды былай жазуға болады:

- ` [а-яё] ` орыс әліпбиінің кез келген әрпіне сәйкес келеді.
- ` [абвгд] ` немесе ` [а-д] ` мына әріптердің біріне сәйкес келеді: ` а `, ` б `, ` в `, ` г ` немесе ` д `.
- ` [a-z] ` латын әліпбиінің ` a ` әрпінен ` z ` әрпіне дейінгі кез келген әріпке сәйкес келеді.
- ` [0-5] ` 0-ден 5-ке дейінгі кез келген цифрға сәйкес келеді.

Мына таңба ` ^ ` жиынның басында логикалық ЕМЕС амалын білдіреді:

- ` [^а-яё] ` орыс әліпбиінің әрпінен басқа кез келген таңбаға сәйкес келеді.
- ` [^a-z] ` латын әліпбиінің ` a ` әрпінен ` z ` әрпіне дейінгі әріптерден басқа кез келген таңбаға сәйкес келеді.
- ` [^\s] ` мына жиынға кірмейтін кез келген таңбаға сәйкес келеді: ` \s `.

FLOWIN жүйесінде ` \w ` кириллицаны қамтымайды. ` [а-яё] ` орыс әліпбиін, соның ішінде ` ё ` әрпін қамтиды. Ал ` [а-я] ` ауқымына бұл әріп кірмейді.

### Таңбаларды экрандау

Қызметтік таңба синтаксистің бөлігі ретінде емес, кәдімгі мәтін ретінде қажет болса, алдына кері қиғаш сызық қойылады: ` \ `. Бұл экрандау деп аталады.

Мысалы:

- ` :\) ` мынаған сәйкес келеді: ` :) `. Мұнда жақша топты емес, кәдімгі жақшаны білдіреді.
- ` кім\? ` мынаған сәйкес келеді: ` кім? `. Мұнда сұрақ белгісі қайталану санын белгілемейді.

## FLOWIN жүйесіндегі іздеу баптаулары

Жалаушалар іздеудің жалпы ережелерін өзгертеді: мысалы, бас және кіші әріптерді ажырату керек пе. FLOWIN жүйесінде кейбір баптаулар қосылып қойған, сондықтан бір үлгі әдепкі баптаулары бар басқа тексергішке қарағанда өзгеше жұмыс істеуі мүмкін.

Жалаушалар бапталған

Сүзгілер мен ауыстыруларда мына баптаулар қосылған: ` IgnoreCase (i) `, ` Singleline (s) `, ` RE2 ` және ` Unicode `. Оларды әр үлгіге қолмен қосудың қажеті жоқ. Іс жүзінде мыналар маңызды:

- ` i ` әріптердің үлкен-кішілігін ажыратуды өшіреді: ` кот ` мына нұсқаларды да табады: ` Кот ` және ` КОТ `.
- ` s ` мына нүктеге ` . ` жаңа жолды табуға мүмкіндік береді. Сондықтан ` .* ` бірден бірнеше жолды қамтуы мүмкін.
- Көпжолды режим ` Multiline (m) ` әдепкі бойынша өшірулі: ` ^ ` және ` $ ` әр жолдың емес, бүкіл хабарламаның басы мен соңына қатысты.
- ` RE2 ` синтаксис ерекшеліктерін белгілейді: ` \d ` 0–9 цифрларын, ал ` \w ` тек латын әріптерін, цифрларды және астын сызу белгісін іздейді. Қосылған ` Unicode ` мына таңбаға кириллицаны қоспайды: ` \w `.

Төмендегі дайын мысалдар үшін ештеңені ауыстырудың қажеті жоқ. Оларды басқа сервисте тексерсеңіз, осы баптауларды ескеріңіз: жалауша атауларының сәйкес келуі әртүрлі қозғалтқыштардың бірдей жұмыс істеуіне әлі кепілдік бермейді.

## Дайын үлгілер

Тапсырманы таңдап, үлгіні «Regexp» режиміндегі «Іздеу» өрісіне көшіріңіз. Мысалдарда дәл табылған мәтін көрсетілген. Одан кейін хабарламамен не болатыны бапталған сүзгіге немесе ауыстыруға байланысты.

### Әр жолы өзгеретін өтінім нөмірі

Нөмірін алдын ала білмей, өтінімді табу.

Үлгі:  
` Өтінім №\d+ `

Мәтін: ` Өтінім №125 қабылданды. Өтінім №8072 жауап күтуде. `

Табады: ` Өтінім №125 `, ` Өтінім №8072 `.

«Өтінім №» мәтіні тұрақты болып қалады, ал ` \d+ ` бір немесе бірнеше қатар келген цифрды табады. № алдындағы бос орын да үлгіге кіреді. «Өтінім №ABC» сәйкес келмейді.

### Тек алты цифрдан тұратын хабарлама

Дәл алты таңбалы коды бар хабарламаларды іріктеу.

Үлгі:  
` ^\d{6}$ `

Мәтін: ` 482901 `

Табады: ` 482901 `.

Басы мен соңы бүкіл хабарламаны шектейді, ал ` {6} ` алты цифрды белгілейді. «Код: 482901», «48290» және соңында бос орны бар «482901 » сәйкес келмейді.

### Мәтіннің бірнеше нұсқасының бірі

Екі мәртебенің бірі аталған хабарламаларды табу.

Үлгі:  
` дайын|болдырылмады `

Мәтін: ` Дайын: файл жіберілді. Басқа тапсырма болдырылмады. `

Табады: ` Дайын `, ` болдырылмады `.

Тік сызық «немесе» дегенді білдіреді. Әріптердің үлкен-кішілігі маңызды емес. Сөз шекаралары болмаса, үлгі «дайын» тіркесін «дайындық» сөзінің ішінен де табады.

### Басқа сөздердің ішіндегі сәйкестіктерсіз тұтас сөз

«кот» сөзін тауып, «котёнок» пен «скот» сөздерін өткізіп жіберу.

Үлгі:  
` \bкот\b `

Мәтін: ` Кот, котёнок и скот. `

Табады: ` Кот `.

` \b ` сөздің екі жағынан шекарасын тексереді. Бос орындар мен тыныс белгілері сөзді көршілес мәтіннен бөлуі мүмкін; олардың өзі сәйкестікке кірмейді.

### Күн.ай.жыл пішіміндегі күн

Күні мен айы екі цифрмен, ал жылы төрт цифрмен жазылған күнді табу.

Үлгі:  
` \d{2}\.\d{2}\.\d{4} `

Мәтін: ` Кездесу 16.10.2026 күні 12:00-де. `

Табады: ` 16.10.2026 `.

` \. ` кез келген таңбаны емес, кәдімгі нүктені білдіреді. Үлгі жазылу пішінін тексереді, күнтізбені тексермейді: «99.99.2026» да сәйкес келеді.

### Орыс және ағылшын тілдеріндегі хэштегтер

Әріптерден, цифрлардан және астын сызу белгілерінен тұратын хэштегтерді табу.

Үлгі:  
` #[а-яёa-z0-9_]+ `

Мәтін: ` #Новости #release_2 #всё_готово `

Табады: ` #Новости `, ` #release_2 `, ` #всё_готово `.

\# таңбасынан кейін жиындағы бір немесе бірнеше таңба келеді. Бос орын немесе дефис сәйкестікті аяқтайды: «\#план-дня» ішінен тек «\#план» табылады.

### @username түріндегі атаулар

Пайдаланушыны немесе арнаны атауға ұқсайтын мәтінді табу.

Үлгі:  
` @[a-z0-9_]{3,} `

Мәтін: ` Автор: @news_room. Тағы біреуі: @ab. `

Табады: ` @news_room `.

@ таңбасынан кейін кемінде үш латын әрпі, цифр немесе астын сызу белгісі қажет. Үлгі жазылу пішінін іздейді, пайдаланушының бар-жоғын тексермейді. Ол электрондық пошта мекенжайының бір бөлігін де табуы мүмкін.

### http:// немесе https:// бар сілтемелер

Протоколымен бірге анық жазылған веб-мекенжайды табу.

Үлгі:  
` https?:\/\/[^\s]+ `

Мәтін: ` Мекенжайларды ашыңыз: https://example.org/page және http://example.org `

Табады: ` https://example.org/page `, ` http://example.org `.

s әрпі міндетті емес. // таңбаларынан кейін үлгі ең жақын бос орынға немесе мына жиынның басқа бөлгішіне дейінгі таңбаларды алады: ` \s `. Протоколы жоқ мекенжай сәйкес келмейді, ал мекенжайға жапсарлас тұрған үтір немесе нүкте сәйкестікке кіріп кетуі мүмкін.

### +7 және он цифр түрінде жазылған телефон

Жақшаларсыз, бос орындарсыз және дефистерсіз, бірге жазылған нөмірді табу.

Үлгі:  
` \+7\d{10} `

Мәтін: ` Байланыс: +79991234567 `

Табады: ` +79991234567 `.

` \+ ` кәдімгі плюс таңбасын іздейді, ал ` \d{10} ` 7-ден кейінгі дәл он цифрды белгілейді. «+7 (999) 123-45-67» нұсқасы сәйкес келмейді. Бұл жазылу пішіні бойынша іздеу, нөмірдің бар-жоғын тексеру емес; ұзынырақ цифрлар тізбегінің ішінде де сәйкестік болуы мүмкін.

### Қажетті белгімен басталатын хабарламалар

«Маңызды:» белгісін тек хабарламаның ең басынан табу.

Үлгі:  
` ^Маңызды: `

Мәтін: ` МАҢЫЗДЫ: кездесу ауыстырылды. `

Табады: ` МАҢЫЗДЫ: `.

^ бүкіл мәтіннің басын тексереді. «Жаңарту: Маңызды: кездесу ауыстырылды» мәтінінде сәйкестік болмайды. Белгі екінші жолдың басында тұрса да сәйкес келмейді, өйткені көпжолды режим әдепкі бойынша өшірулі.

### Сөздер арасындағы артық бос орындар

Қатар тұрған екі немесе одан көп кәдімгі бос орынды тауып, кейін оларды бір бос орынға ауыстыру.

Үлгі:  
` [ ]{2,} `

Мысалы, ` Аралары··алшақ···сөздер ` мәтінінде екі топ табылады: екі және үш бос орын. Мына таңба ` · ` мұнда кәдімгі бос орынды ғана көрсетеді; оны енгізудің қажеті жоқ.

Шаршы жақшалардың ішінде кәдімгі бос орын тұр, ал ` {2,} ` қатарынан кемінде екі бос орынды талап етеді. Артық бос орындарды жою үшін табылған үзінділерді бір бос орынға ауыстырады. Мұндай үлгі жаңа жолдарға әсер етпейді.

### Жүз таңбаға дейінгі қысқа хабарламалар

Ұзындығы 1-ден 100 таңбаға дейінгі бос емес хабарламаларды іріктеу.

Үлгі:  
` ^.{1,100}$ `

Мәтін: ` Қысқа хабарлама `

Табады: ` Қысқа хабарлама `.

Нүкте кез келген таңбаны, соның ішінде бос орындар мен жаңа жолдарды санайды. Жақшалар шектерді белгілейді, ал ^ және $ хабарламаны толық тексеруді талап етеді. Бос хабарлама және 100 таңбадан ұзын мәтін сәйкес келмейді. Құрамдас эмоджи бірнеше таңба ретінде саналуы мүмкін.

Тізім толықтырылып отырады. Жаңа үлгілер бойынша ұсыныстарды қолдау қызметіне жіберуге болады: [@value\_maker](<https://t.me/value_maker>).

Өз үлгіңізді тексеру

Өз тұрақты өрнектеріңізді [regex101.com](<https://regex101.com/>) сайтында тексеру ыңғайлы. Ондағы іздеу баптаулары FLOWIN жүйесінен өзгеше болуы мүмкін, сондықтан жұмыс жөнелтуіне қолданар алдында күтілетін сәйкестігі бар және жоқ сынақ хабарламаларында тексеру қажет.

## Жиі қойылатын сұрақтар

 

**Қай кезде «Мәтін» немесе «Тізім» жеткілікті, ал қашан «Regexp» қажет?**

«Мәтін» режимі белгілі бір тіркеске жарайды, ал «Тізім» бірнеше нұсқаны тізіп беруге мүмкіндік береді. Мәтін ереже бойынша өзгерсе, «Regexp» қажет: мысалы, «Өтінім» сөзінен кейін әр жолы жаңа нөмір тұрса. Ол сөз шекараларын немесе таңба санын беруге де көмектеседі. Табылған хабарламамен орындалатын әрекет [сүзгіде](<https://flowin.click/kk/articles/zhoeneltiletin-khattardy-suezgileu>) немесе [ауыстыруда](<https://flowin.click/kk/articles/zhoeneltiletin-khattardaghy-auystyrular>) бөлек бапталады.

 

**Неліктен онлайн тексергіштегі өрнек FLOWIN жүйесінде басқаша жұмыс істейді?**

Нәтиже қозғалтқыш пен іздеу баптауларына байланысты. FLOWIN сүзгілері мен ауыстыруларында IgnoreCase, Singleline, RE2 және Unicode қосылған, ал Multiline әдепкі бойынша өшірулі. Сондықтан әріптердің үлкен-кішілігі ажыратылмайды, нүкте жаңа жолды табуы мүмкін, ал ` ^ ` және ` $ ` бүкіл хабарламаға қатысты. Мына [іздеу баптауларын](<https://flowin.click/kk/articles/suezgiler-men-auystyrulardaghy-turaqty-oernekter#flowin-flags>) салыстырып, өрнекті FLOWIN жүйесінде күтілетін сәйкестігі бар және жоқ хабарламаларда тексеріңіз.

 

**Неліктен .\* бірнеше жолды қамтиды?**

FLOWIN жүйесінде Singleline қосылған: нүкте жаңа жолға да сәйкес келеді. Сондықтан ` .* ` бірінші жолдың соңында міндетті түрде тоқтамайды. Ең жақын жаңа жолға дейінгі мәтінді табу қажет болса, мына үлгіні қолдануға болады: ` [^\r\n]+ `. Бұл үлгі каретканы қайтару мен жаңа жолдан басқа бір немесе бірнеше таңбаны іздейді.

 

**Неліктен \\w орыс әріптерін таппайды?**

FLOWIN іздеу баптауларында ` \w ` латын әріптерін, цифрларды және астын сызу белгісін қамтиды. Орыс әріптері үшін ` [а-яё] `, ал осындай әріптер тізбегі үшін ` [а-яё]+ ` қолданыңыз. Ал ` ё ` әрпін бөлек көрсету керек: ` а-я ` ауқымы оны қамтымайды. Бас және кіші әріптерді ажырату қажет емес, өйткені іздеу әріптердің үлкен-кішілігін ескермейді.

 

**Сөзді басқа сөздің ішінен емес, тұтас қалай табуға болады?**

Сөздің екі жағына ` \b ` қосыңыз. Мысалы, ` \bкот\b ` «Кот, котёнок и скот» мәтінінен «Кот» сөзін табады, бірақ басқа екі сөзді өткізіп жібереді. Шекаралар сөздің орнын тексереді, ал бос орындар мен тыныс белгілері табылған үзіндіге кірмейді.

 

**Мысалдағы күн үлгісі мұндай күннің бар-жоғын тексере ме?**

Жоқ. Мына өрнек ` \d{2}\.\d{2}\.\d{4} ` тек жазылу пішінін тексереді: екі цифр, нүкте, екі цифр, нүкте және төрт цифр. Сондықтан ол ` 16.10.2026 ` және ` 99.99.2026 ` мәндерін де табады. Бұл мысал күнге ұқсас үзінділерді іздеуге жарайды, бірақ күн мен айдың дұрыстығын растамайды.

 

**Тұрақты өрнек ештеңе таппаса нені тексеру керек?**

Алдымен «Іздеу» өрісінің жанында «Regexp» таңдалғанына көз жеткізіңіз. Содан кейін үлгіні бастапқы мәтінмен салыстырыңыз: бос орындар, жаңа жолдар және кәдімгі таңбалар да сәйкестікке әсер етеді. Мысалы, ` Өтінім №\d+ ` № алдында бос орынды және одан кейін цифрларды талап етеді, сондықтан ` Өтінім№125 ` немесе ` Өтінім №ABC ` мәндерін таппайды. Мына шекараларды да тексеріңіз: ` ^ ` және ` $ `. Әдепкі бойынша олар бүкіл хабарламаға қатысты. Қарапайым үзіндіден бастап, әр жолы нәтижені тексере отырып, шарттарды бір-бірден қосыңыз.
