cari

Ungkapan Biasa

Oct 11, 2024 am 10:25 AM

Regular Expressions

Gambar ini, anda cuba mendaftar untuk tapak web, anda masukkan e-mel dan kata laluan anda dan anda mendapat mesej "Nama pengguna atau kata laluan yang anda masukkan tidak sah. Sila cuba lagi. "

Bagaimanakah komputer mengetahui nama pengguna atau kata laluan yang anda masukkan adalah tidak sah? Jawapannya ialah alat yang sangat berkuasa yang dipanggil ungkapan biasa.

Apakah Ekspresi Biasa?

Ungkapan biasa, atau ringkasan regex, ialah corak yang digunakan untuk memadankan semua jenis aksara dalam teks. Keindahan ungkapan biasa ialah anda boleh mereka bentuknya untuk mencari apa sahaja yang anda mahukan.

Bagaimana Corak RegEx Berfungsi

Corak RegEx boleh semudah mencari aksara dalam teks, dengan padanan penuh yang tepat. Contohnya corak:

kata laluan

Akan dipadankan dengan teks literal "kata laluan". Corak khusus ini peka huruf besar-besaran jadi teks "Kata Laluan" tidak sepadan kerana p ditulis dengan huruf besar.

Corak RegEx Kompleks

Kebanyakan tapak web memerlukan kata laluan anda untuk memenuhi keperluan ini:

  • Mesti mengandungi huruf kecil
  • Mesti mengandungi huruf besar
  • Mesti mengandungi digit
  • Mesti mengandungi aksara bukan perkataan
  • Mestilah sekurang-kurangnya 8 aksara panjang

Bagaimanakah kita akan membuat corak yang mencari keperluan ini? Kuncinya terletak pada metakarakter regex. Metacharacter ialah trengkas yang dipratakrifkan untuk memadankan jenis watak.

Memenuhi Keperluan

Karakter meta yang boleh kita gunakan untuk melepasi keperluan pertama ialah:

[a-z]

Kurungan digunakan untuk memberitahu komputer di mana julat bermula dan berakhir. a-z digunakan untuk mencari huruf kecil dalam julat a-z.


[A-Z]

Sama seperti a-z, A-Z mencari sebarang huruf besar. Melepasi syarat kedua.


d

Metacharacter ini melepasi keperluan ketiga, ia memberitahu komputer untuk mencari dan memadankan dengan mana-mana digit.


W

Metacharacter ini boleh digunakan untuk meluluskan hujah keempat kerana ia sepadan dengan mana-mana aksara bukan perkataan. Aksara perkataan termasuk mana-mana huruf besar atau tidak, mana-mana digit dan garis bawah.


{8,}

Kurung kerinting ialah aksara khas yang memberitahu komputer untuk memadankan apa sahaja yang datang sebelum itu x banyak kali. Jika koma disertakan di dalam kurungan, ia berubah untuk memadankan apa sahaja yang tertera sebelum sekurang-kurangnya x amaun kali. Jika nombor kedua diletakkan selepas koma, ia akan menjadi pola didahului maksimum y kali. Jika tiada nombor diletakkan selepas koma, komputer mentafsirkannya sebagai jumlah yang tidak terhingga.

Menyatukan Semuanya

Dengan bantuan beberapa aksara meta tambahan:

^ Digunakan untuk menunjukkan permulaan teks
$ Digunakan untuk menunjukkan penghujung teks
() Digunakan untuk mengumpulkan ungkapan
(?=) Digunakan untuk melihat ke hadapan dalam teks
. Padan dengan mana-mana watak
* Memadankan token sebelumnya antara 0 dan masa tanpa had

Kini kami boleh meletakkan corak regex kata laluan kami bersama-sama. Keputusan akhir akan kelihatan seperti ini.

^(?=.*[a-z])(?=.*[A-Z])(?=.*d)(?=.*W).{8,}$

Kesimpulan

Pada ketika ini anda mungkin menyedari betapa kuatnya ungkapan biasa. Ini hanyalah puncak gunung ais. Ia boleh digunakan untuk mengesahkan input, memadankan teks, mencari dan menggantikan teks, antara lain.

Jika artikel ini memuncak minat anda, saya syorkan anda menyemak beberapa pautan di bawah.

Untuk mengetahui lebih lanjut tentang ungkapan biasa, lihat artikel ini:
Ungkapan Biasa
Ungkapan Biasa Python-Google Education
Untuk mencuba menulis ungkapan biasa anda sendiri, lawati regex101

Sumber kertas dinding

Atas ialah kandungan terperinci Ungkapan Biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Apakah jenis data yang boleh disimpan dalam array python?Apakah jenis data yang boleh disimpan dalam array python?Apr 27, 2025 am 12:11 AM

Pythonlistscanstoreanydatatype, arraymoduleArraysstoreonetype, andnumpyarraysarefornumumericalcomputations.1) listsareversatileButlessMememory-efficient.2) arraymoduleArduleArrayRaysarememory-efficientforhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogen

Apa yang berlaku jika anda cuba menyimpan nilai jenis data yang salah dalam array python?Apa yang berlaku jika anda cuba menyimpan nilai jenis data yang salah dalam array python?Apr 27, 2025 am 12:10 AM

KetikayyoUttemptToStoreAveFheWrongatatypeinapythonArray, anda akan menjadicounteratypeerror

Yang merupakan sebahagian daripada Perpustakaan Standard Python: Senarai atau Array?Yang merupakan sebahagian daripada Perpustakaan Standard Python: Senarai atau Array?Apr 27, 2025 am 12:03 AM

Pythonlistsarepartofthestandardlibrary, sementara

Apa yang perlu anda periksa jika skrip dijalankan dengan versi Python yang salah?Apa yang perlu anda periksa jika skrip dijalankan dengan versi Python yang salah?Apr 27, 2025 am 12:01 AM

Thescriptisrunningwiththewrongpythonversionduetoincorrectdefault interpretsettings

Apakah beberapa operasi biasa yang boleh dilakukan pada tatasusunan python?Apakah beberapa operasi biasa yang boleh dilakukan pada tatasusunan python?Apr 26, 2025 am 12:22 AM

PythonArraysSupportVariousoperations: 1) SlicingExtractsSubsets, 2) Menambah/ExtendingAddSelements, 3) InsertingPlaceSelementSatSatSatSpecifics, 4) RemovingDeleteselements, 5) Sorting/ReversingChangesOrder,

Dalam jenis aplikasi yang biasa digunakan oleh numpy?Dalam jenis aplikasi yang biasa digunakan oleh numpy?Apr 26, 2025 am 12:13 AM

NumpyarraysareessentialforapplicationRequiringeficientnumericalcomputationsanddatamanipulation.theyarecrucialindaSascience, machinelearning, fizik, kejuruteraan, danfinanceduetotheirabilitytOHandlelarge-Scaledataefisien.Forexample, infinancialanal

Bilakah anda memilih untuk menggunakan array di atas senarai di Python?Bilakah anda memilih untuk menggunakan array di atas senarai di Python?Apr 26, 2025 am 12:12 AM

UseanArray.arrayoveralistinpythonwhendealingwithhomogeneousdata, criticalcode prestasi, orinterfacingwithccode.1) homogeneousdata: arrayssavemememorywithtypedelements.2)

Adakah semua operasi senarai disokong oleh tatasusunan, dan sebaliknya? Mengapa atau mengapa tidak?Adakah semua operasi senarai disokong oleh tatasusunan, dan sebaliknya? Mengapa atau mengapa tidak?Apr 26, 2025 am 12:05 AM

Tidak, notalllistoperationsaresuportedByArrays, andviceversa.1) arraysdonotsupportdynamicoperationslikeappendorinsertwithoutresizing, whyimpactsperformance.2) listsdonotguaranteeconstantTimeComplexityFordirectacesscesscesscesscesscesscesscesscesscesessd.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).