⊗ppPmRgSHy 238 of 447 menu

PHP Regular Ifodalarda [ ] Ichida Defis

Defis - [ ] ichida [] maxsus belgidir (tashqarida - emas). Agar sizga defis o'zi kerak bo'lsa - uni guruh ajratuvchisi sifatida qabul qilinmaydigan joyga qo'ying.

Bu nima uchun muhim: siz o'zingiz sezmasdan belgilar guruhini yaratishingiz mumkin. Masalan, [:-@] - siz ikkita nuqta, defis va @ belgisini tanlayotganingizni o'ylaysiz, lekin aslida : va @ orasidagi belgilar guruhini olasiz. Ushbu guruhga quyidagi belgilar kiradi: :, ;, ?, <, =, >.

Ular qayerdan keladi? ASCII jadvalidan - ikkita nuqta raqami @ belgisidan kichik - va guruh hosil bo'ladi. Ya'ni barcha guruhlar ASCII jadvali bo'yicha hosil bo'ladi (istak bo'lsa, undan foydalanish mumkin).

Bunga qanday qarshi turish kerak: defis belgisini u aniq guruh belgisi sifatida qabul qilinmaydigan joyga, masalan, boshida yoki oxirida (ya'ni [ dan keyin yoki ] dan oldin) qo'ying.

Shuningdek, defisni ekranlash mumkin - unda u qayerda turishidan qat'iy nazar o'zini anglatadi. Masalan, [:-@] o'rniga [:\-@] yozing - va endi guruh bo'lmaydi, balki uchta belgi - ikkita nuqta, defis va @ belgisi bo'ladi.

Misol

Quyidagi misolda qidiruv shabloni quyidagicha: 1 raqami, keyin 'a' dan 'z' gacha harf, keyin 2 raqami:

<?php $str = '1a2 1-2 1c2 1z2'; $res = preg_replace('#1[a-z]2#', '!', $str); ?>

Natijada o'zgaruvchiga quyidagi yoziladi:

'! 1-2 ! !'

Misol

Keling endi defisni ekranlaymiz. Natijada qidiruv shabloni quyidagicha: 1 raqami, keyin 'a' harfi, yoki defis, yoki 'z' harfi, keyin 2 raqami:

<?php $str = '1a2 1-2 1c2 1z2'; $res = preg_replace('#1[a\-z]2#', '!', $str); ?>

Natijada o'zgaruvchiga quyidagi yoziladi:

'! ! 1c2 !'

Misol

Shunchaki defisni ekranlamasdan, o'rnini almashtirish mumkin:

<?php $str = '1a2 1-2 1c2 1z2'; $res = preg_replace('#1[az-]2#', '!', $str); ?>

Natijada o'zgaruvchiga quyidagi yoziladi:

'! ! 1c2 !'

Misol

Quyidagi misolda qidiruv shabloni quyidagicha: birinchi belgi - kichik harflar yoki defis '-', keyin ikkita 'x' harfi:

<?php $str = 'axx Axx -xx @xx'; $res = preg_replace('#[a-z-]xx#', '!', $str); ?>

Natijada o'zgaruvchiga quyidagi yoziladi:

'! Axx ! @xx'

Misol

Quyidagi misolda qidiruv shabloni quyidagicha: birinchi belgi - kichik, katta harflar yoki defis '-', keyin ikkita 'x' harfi:

<?php $str = 'axx Axx -xx @xx'; $res = preg_replace('#[a-zA-Z-]xx#', '!', $str); ?>

Natijada o'zgaruvchiga quyidagi yoziladi:

'! ! ! @xx'

Misol

Defisni ikkita guruh orasiga joylashtirish mumkin - u erda u aniq yana bitta guruh yaratmaydi:

<?php $str = 'axx 9xx -xx @xx'; $res = preg_replace('#[a-z-0-9]xx#', '!', $str); ?>

Natijada o'zgaruvchiga quyidagi yoziladi:

'! ! ! @xx'

Amaliy vazifalar

Berilgan satr:

<?php $str = 'xaz xBz xcz x-z x@z'; ?>

Quyidagi shablon bo‘yicha barcha satrlarni toping: 'x' harfi, katta yoki kichik harf yoki defis, 'z' harfi.

Berilgan satr:

<?php $str = 'xaz x$z x-z xcz x+z x%z x*z'; ?>

Quyidagi shablon bo‘yicha barcha satrlarni toping: 'x' harfi, keyin dollar, yoki defis yoki ortiqcha belgi, keyin 'z' harfi.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish