Rumah > Java > javaTutorial > Bagaimanakah Penambat Ungkapan Biasa '^' dan '$' Mengawal Padanan Corak?

Bagaimanakah Penambat Ungkapan Biasa '^' dan '$' Mengawal Padanan Corak?

Susan Sarandon
Lepaskan: 2024-12-29 20:32:10
asal
298 orang telah melayarinya

How Do Regular Expression Anchors '^' and '$' Control Pattern Matching?

Memahami Sauh Ungkapan Biasa: ^ dan $

Dalam bidang ungkapan biasa, '^' dan '$' menggunakan kuasa yang ketara. Ia berfungsi sebagai penanda sempadan, mengehadkan padanan corak pada kawasan tertentu rentetan.

'^' (Mula Sauh Rentetan)

Tabuh '^' sepadan dengan permulaan rentetan. Ia memastikan bahawa corak berada di barisan hadapan mana-mana perlawanan. Pertimbangkan contoh:

^\w+@\w+[.]\w+
Salin selepas log masuk

Corak ini sepadan dengan alamat e-mel seperti "john@example.com" tetapi bukan "john@example.com.office". Tanpa '^', regex boleh memadankan "ohn@example.com" dalam rentetan yang lebih panjang, yang mungkin tidak dimaksudkan.

'$' (Tamat Rentetan Sauh)

Sebaliknya, sauh '$' sepadan dengan hujung rentetan. Ia mengehadkan padanan corak hingga ke penghujungnya. Contohnya:

\w+@\w+[.]\w+$
Salin selepas log masuk

Corak ini memastikan bahawa alamat e-mel adalah padanan terpencil, bukan sekadar subrentetan dalam rentetan yang lebih besar.

Gabungan Anchor

Menggabungkan '^' dan '$' sauh menguatkuasakan padanan rentetan lengkap. Pertimbangkan contoh:

^\w+@\w+[.]\w+$
Salin selepas log masuk

Corak ini memastikan bahawa setiap aksara dalam rentetan input sepadan dengan aksara dalam corak. Jika mana-mana bahagian rentetan berada di luar corak, tiada padanan akan ditemui.

Pertimbangan Tambahan

  • Dalam sesetengah pelaksanaan, sauh hadir secara tersirat pada permulaan dan penghujung rentetan (cth., kaedah Java matches()).
  • Bendera (?m), atau Pemalar Corak.MULTILINE, membenarkan '^' dan '$' memadankan pemisah baris, membolehkan pemadanan fleksibel dalam rentetan berbilang baris.

Atas ialah kandungan terperinci Bagaimanakah Penambat Ungkapan Biasa '^' dan '$' Mengawal Padanan Corak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan