Ekspresi biasa MySQL yang setara, bersamaan dengan ungkapan biasa Python berikut
P粉496886646
P粉496886646 2023-09-07 10:04:39
0
1
423

skema python => ^(?=.bABDULb)(?=.bHAIb.)(?=.bMANSOORb).*$
Memerlukan skema mysql yang setara
boleh anda bantu saya?

P粉496886646
P粉496886646

membalas semua(1)
P粉314915922

Reex dalam soalan ialah cara yang pelik untuk memadankan perkataan mudah. Tidak jelas apakah input yang dijangkakan. Mungkin, input boleh membenarkan pendekatan ini.

^(?=.\bABDUL\b)(?=.\bHAI\b.)(?=.\bMANSOOR\b).*$

Ini bermakna: mesti bermula dengan mana-mana watak yang bukan perkataan, diikuti oleh ABDUL, watak bukan perkataan, HAI, watak bukan perkataan, MANSOOR, watak bukan perkataan atau hujung rentetan.

^[^[:alnum:]]ABDUL[^[:alnum:]]HAI[^[:alnum:]]MANSOOR([^[:alnum:]]?.*)?$

Ini bermakna: permulaan bukan abjad nombor atau abjad angka (aksara abjad angka), ABDUL, aksara bukan abjad angka, HAI, aksara bukan abjad, MANSOOR, aksara bukan abjad atau hujung rentetan.

Saya belum mengujinya dan tidak berniat untuk menjadikannya sama seperti yang pertama, tetapi ia sepatutnya cukup dekat.

Untuk sesiapa yang ingin menyalin ini ke dalam kod mereka:

  • Memadankan aksara pertama adalah luar biasa dan mungkin merupakan pepijat dalam regex asal.
  • (?=...) ialah "penegasan pandang ke hadapan" yang tidak menggunakan sebarang aksara, versi POSIX tidak mempunyainya, tetapi untuk carian rentetan mudah, ia mungkin tidak penting.
  • Kedua-dua versi hendaklah sepadan dengan rentetan seperti !ABDUL$HAI)MANSOOR - pastikan itu yang anda mahukan.

Bagi yang ingin memahami ungkapan biasa yang saya gunakan, boleh rujuk pautan berikut:

https://dev.mysql.com/doc/refman/8.0/en/regexp.html (sintaks POSIX untuk mysql) dan https://docs.python.org/3/library/re.html (PCRE untuk python = sintaks serasi Perl)

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!