Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan fungsi ungkapan biasa untuk memadankan teks dengan mudah

Gunakan fungsi ungkapan biasa untuk memadankan teks dengan mudah

PHPz
PHPzasal
2023-06-15 22:03:561364semak imbas

Ekspresi biasa ialah alat pemadanan teks yang berkuasa yang boleh digunakan dalam bahasa pengaturcaraan atau penyunting teks yang berbeza. Dalam pemprosesan teks, fungsi ungkapan biasa membolehkan kami memadankan dan menapis kandungan teks dengan mudah dan meningkatkan kecekapan pemprosesan teks.

Fungsi ungkapan biasa biasanya mempunyai beberapa aksara meta dan simbol asas, seperti:

  • (titik): sepadan dengan mana-mana aksara tunggal; sepadan dengan permulaan baris;
  • $ (tanda dolar): sepadan dengan hujung baris;
  • d: sepadan dengan nombor;
  • w: padankan huruf atau nombor atau garis bawah;
  • s: sepadan dengan aksara ruang putih seperti ruang atau tab.
  • Berikut ialah beberapa contoh aplikasi praktikal fungsi ekspresi biasa.
  • Ekstrak nombor telefon daripada teks

Jika terdapat teks yang mengandungi berbilang nombor telefon, seperti ini:
  1. Ini milik saya Nombor telefon ialah 123-456-7890, dan nombor telefon yang lain ialah 111-222-3333.
Kita boleh menggunakan fungsi ekspresi biasa untuk mengekstrak nombor telefon ini, kodnya adalah seperti berikut:

import re

text = "这是我的电话号码 123-456-7890,另外一个电话号码是 111-222-3333。"
pattern = r"d{3}-d{3}-d{4}"
phone_numbers = re.findall(pattern, text)

print(phone_numbers)

Dalam kod di atas, pustaka ekspresi biasa Python mula-mula diimport. Kemudian teks pembolehubah ditakrifkan dan diberikan kandungan teks yang mengandungi nombor telefon. Seterusnya, corak ungkapan biasa ditakrifkan, d{3}-d{3}-d{4} bermaksud memadankan format nombor telefon dalam bentuk xxx-xxx-xxxx. Akhir sekali, gunakan fungsi re.findall untuk mencari semua nombor telefon yang sepadan dengan corak dan simpan hasil yang sepadan dalam nombor_telefon berubah. Menjalankan kod di atas, hasil output ialah ['123-456-7890', '111-222-3333'].

Tentukan sama ada sekeping teks mematuhi format alamat e-mel

Alamat e-mel biasanya mengandungi format nama pengguna@domain, di mana nama pengguna ialah nama pengguna dan domain ialah nama domain pelayan mel. Berikut ialah contoh untuk menentukan sama ada format alamat e-mel adalah betul:
    import re
    
    text = "我的邮箱是john@example.com。"
    pattern = r"w+@w+.w+"
    if re.search(pattern, text):
        print(text + " 是一个有效的邮箱地址。")
    else:
        print(text + " 不是一个有效的邮箱地址。")
  1. Dalam kod di atas, fungsi carian semula digunakan untuk mencari kandungan teks yang sepadan dengan format alamat e-mel. Corak ungkapan biasa w+@w+.w+ digunakan untuk memadankan alamat e-mel yang memenuhi keperluan format. Jika kandungan teks yang memenuhi kriteria ditemui, kandungan teks yang ditentukan akan dikeluarkan sebagai alamat e-mel yang sah.
Menggunakan fungsi ekspresi biasa boleh meningkatkan kecekapan dan ketepatan pemprosesan teks. Walau bagaimanapun, perlu diingatkan bahawa fungsi ungkapan biasa mungkin dipengaruhi oleh pengekodan teks, tabiat bahasa dan faktor lain, jadi ia perlu dilaraskan dan dioptimumkan mengikut situasi tertentu apabila digunakan.

Atas ialah kandungan terperinci Gunakan fungsi ungkapan biasa untuk memadankan teks dengan mudah. 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