Jadual Kandungan
Ungkapan biasa untuk melaksanakan padanan bertindih
Ungkapan biasa dan padanan biasa
Ungkapan biasa
Rumah pembangunan bahagian belakang Tutorial Python Bagaimana untuk melaksanakan padanan bertindih dengan ungkapan biasa python

Bagaimana untuk melaksanakan padanan bertindih dengan ungkapan biasa python

Jul 25, 2022 pm 05:20 PM
python

Artikel ini membawa anda pengetahuan yang berkaitan tentang Python terutamanya cara ungkapan biasa python melaksanakan padanan bertindih. Mari kita lihat bersama-sama adalah membantu.

Bagaimana untuk melaksanakan padanan bertindih dengan ungkapan biasa python

[Cadangan berkaitan: Tutorial video Python3]

Ungkapan biasa untuk melaksanakan padanan bertindih

import regex
string = '100101010001'
str_re = '101'
print(regex.findall(str_re, string, overlapped=True))

Padanan perpustakaan semula biasa hanya boleh memadankan satu '101'.

Ungkapan biasa dan padanan biasa

Ungkapan biasa

Ungkapan biasa boleh difahami sebagai ungkapan untuk menapis data, iaitu bilangan atom yang terhad dan metakarakter.

Atom: Unit asas, setiap ungkapan mempunyai sekurang-kurangnya satu atom

< tr class="firstRow">< /tr>
Aksara biasa membentuk atom
普通字符组成原子

非打印字符组成原子

(不打印在输出台的字符)

n:换行

t:tab退格符

通用字符组成原子

w:匹配任意字母、数字、下划线

W:与w相反

d:匹配任意十进制数

D:与d相反

s:匹配任意空白字符,如空格、换行、缩进

S:与s相反

原子表组成原子

一组原子组成一个表,由[]声明

表内原子优先级相等,但内容只出现依次

若原子表以 ^ 开头,则表示取反

Aksara bukan cetakan membentuk atom
#普通字符组成原子
pat1 = "abcd"
 
#非打印字符组成原子
pat2 = "\n"
 
#通用字符做原子
pat3 = "\w"
 
#原子表组成原子
pat4 = "py[abc]"
#可以匹配pya,pyb,pyc,但匹配pyab等原子表重复出现的情况失败
 
#原子表开头带 ^ 表示取反
pat5 = "py[^abc]"
#第三个位置匹配除了a,b,c外的任意一个字符

(Aksara tidak dicetak pada jadual output)

n: suapan baris

.匹配任意字符,除了换行符
^匹配字符串开始的位置
$匹配字符串结束的位置,当出现多组符合的匹配时,返回字符串最后的那组匹配
*匹配 0,1,n 次前面的原子【贪婪模式:尽可能多的匹配】
?匹配 0,1 次前面的原子【懒惰模式:精确匹配】
匹配 1,n 次前面的原子
{ j }前面的原子出现 j 次
{ j , }前面的原子至少出现 j 次
{ j , k }前面的原子至少出现 j 次,至多出现 k 次
i | j匹配 i 或 j ,若 i 与 j 同时出现,匹配 i
( )组,限制这组数据的组合如()内所描述一样,只返回符合括号内描述的内容
t: ruang belakang tab

Watak universal membentuk atomw: Memadankan mana-mana huruf, nombor dan garis bawah

W: Lawan w

d: Memadankan mana-mana nombor perpuluhan
re.I匹配时忽略大小写
re.M多行匹配
re.L本地化识别匹配
re.U根据unicon字符匹配,影响w W
re.S匹配包括换行符

D: Bertentangan ds: Memadankan mana-mana aksara ruang putih, seperti ruang, baris baharu, indenS: Bertentangan dengan s

Jadual atom terdiri daripada atom

Sekumpulan atom membentuk jadual, diisytiharkan oleh []

Keutamaan atom dalam jadual adalah sama, tetapi kandungannya hanya Urutan kejadian

Jika jadual atom bermula dengan ^, ia bermakna penolakan

  • aksara meta: re.search(pat, str[, flag])Watak dengan makna istimewa dalam ungkapan biasa
import re
str = &#39;python&#39;
pat = &#39;pytho[a-n]&#39;
print(re.search(pat, str))
    Pengubah suai corak
  • re.match(pat, str[, flag])
  • ialah parameter pada kedudukan bendera dalam fungsi, tanpa mengubah ungkapan biasa Dalam sesetengah kes, tukar maknanya dan laraskan hasil yang sepadan.
import re
str_1 = &#39;hello world&#39;
str_2 = &#39;world hello&#39;
pat = &#39;world&#39;
print(re.match(pat, str_1))
print(re.match(pat, str_2))
  • re.complie(pat[, flag])Padanan biasa
  • findall(str[, pos[, endpos]])
  • Ungkapan biasa ialah padanan kabur pada rentetan, salah satunya digunakan sebagai rentetan biasa perlawanan. Padanan biasa ialah teknologi yang digunakan oleh perangkak python untuk mengekstrak maklumat sasaran daripada maklumat teks yang dirangkak. re.complie(pat).findall(str)
Fungsi yang biasa digunakan untuk pemadanan biasa: (panggil modul ungkapan biasa semula)
import re
str = "hello world hello world hello world"
pat = "hello"
print(re.complie(pat).findall(str))
print(re.complie(pat).findall(str, 5, 15))
  • re.sub(pat, repl, str[, count[, flag]])
  • : Imbas rentetan str dan kembalikan kedudukan tepuk (th berjaya dipadankan), bendera digunakan untuk mengawal kaedah pemadanan ungkapan biasa
import re
str = "400-823-823"
pat = "-"
#短横改空格,最大替换次数2
str_new = re.sub(pat, " ", str, count=2)

: imbas kedudukan permulaan rentetan str dan kembalikan kedudukan daripada pat (th (perlawanan yang berjaya), bendera digunakan untuk mengawal kaedah pemadanan ungkapan biasa [jika ia tidak sepadan pada mulanya, ia akan tamat dan tiada kembali] : fungsi pemadanan global, sepadan dengan semua subrentetan dalam str yang sepadan dengan pat, memuatkan senarai dan mengembalikan hasilnya : Gantikan item yang sepadan dalam rentetan [data bersih], anda boleh menggunakan kiraan untuk menentukan bilangan maksimum penggantian [Cadangan berkaitan : Tutorial video Python3]

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan padanan bertindih dengan ungkapan biasa python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

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.

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!

Artikel Panas

Rimworld Odyssey Cara Ikan
1 bulan yang lalu By Jack chen
Apakah had transaksi untuk pengguna asing di Alipay?
1 bulan yang lalu By 下次还敢
Bolehkah saya mempunyai dua akaun Alipay?
1 bulan yang lalu By 下次还敢

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1506
276
Python Sambung ke SQL Server PyoDBC Contoh Python Sambung ke SQL Server PyoDBC Contoh Jul 30, 2025 am 02:53 AM

Pasang PYODBC: Gunakan perintah PipinstallPyoDBC untuk memasang perpustakaan; 2. Sambungkan SQLServer: Gunakan rentetan sambungan yang mengandungi pemacu, pelayan, pangkalan data, uid/pwd atau aman 3. Semak pemacu yang dipasang: Jalankan pyodbc.drivers () dan tapis nama pemacu yang mengandungi 'SQLServer' untuk memastikan nama pemacu yang betul digunakan seperti 'ODBCDriver17 untuk SQLServer'; 4. Parameter utama rentetan sambungan

Contoh Python Shutil Rmtree Contoh Python Shutil Rmtree Aug 01, 2025 am 05:47 AM

shutil.rmtree () adalah fungsi dalam python yang secara rekursif memadam seluruh pokok direktori. Ia boleh memadam folder yang ditentukan dan semua kandungan. 1. Penggunaan Asas: Gunakan shutil.rmtree (Path) untuk memadam direktori, dan anda perlu mengendalikan fileNotFoundError, PermissionError dan pengecualian lain. 2. Aplikasi Praktikal: Anda boleh membersihkan folder yang mengandungi subdirektori dan fail dalam satu klik, seperti data sementara atau direktori cache. 3. Nota: Operasi penghapusan tidak dipulihkan; FileNotFoundError dilemparkan apabila jalan tidak wujud; Ia mungkin gagal kerana kebenaran atau pekerjaan fail. 4.

Apakah arbitraj statistik dalam kriptografi? Bagaimana arbitraj statistik berfungsi? Apakah arbitraj statistik dalam kriptografi? Bagaimana arbitraj statistik berfungsi? Jul 30, 2025 pm 09:12 PM

Pengenalan kepada arbitraj statistik statistik adalah kaedah perdagangan yang menangkap ketidakcocokan harga dalam pasaran kewangan berdasarkan model matematik. Falsafah terasnya berasal dari regresi min, iaitu, harga aset boleh menyimpang dari trend jangka panjang dalam jangka pendek, tetapi akhirnya akan kembali ke purata sejarah mereka. Peniaga menggunakan kaedah statistik untuk menganalisis korelasi antara aset dan mencari portfolio yang biasanya berubah serentak. Apabila hubungan harga aset -aset ini tidak dapat disimpulkan, peluang arbitraj timbul. Dalam pasaran cryptocurrency, arbitraj statistik terutamanya lazim, terutamanya disebabkan oleh ketidakcekapan dan turun naik drastik pasaran itu sendiri. Tidak seperti pasaran kewangan tradisional, kriptografi beroperasi sepanjang masa dan harga mereka sangat terdedah kepada berita, sentimen media sosial dan peningkatan teknologi. Turun naik harga yang berterusan ini kerap mencipta kecenderungan harga dan memberikan arbitrageurs dengan

python iter dan contoh seterusnya python iter dan contoh seterusnya Jul 29, 2025 am 02:20 AM

iter () digunakan untuk mendapatkan objek iterator, dan seterusnya () digunakan untuk mendapatkan elemen seterusnya; 1. Gunakan Iterator () untuk menukar objek yang boleh dimatikan seperti senarai ke dalam iterator; 2. Panggil seterusnya () untuk mendapatkan unsur -unsur satu demi satu, dan mencetuskan pengecualian berhenti apabila unsur -unsur habis; 3. Gunakan seterusnya (iterator, lalai) untuk mengelakkan pengecualian; 4. Iterator tersuai perlu melaksanakan kaedah __iter __ () dan __Next __ () untuk mengawal logik lelaran; Menggunakan nilai lalai adalah cara yang sama untuk traversal selamat, dan keseluruhan mekanisme adalah ringkas dan praktikal.

Bagaimana untuk melaksanakan pertanyaan SQL di Python? Bagaimana untuk melaksanakan pertanyaan SQL di Python? Aug 02, 2025 am 01:56 AM

Pasang pemacu pangkalan data yang sepadan; 2. Gunakan Connect () untuk menyambung ke pangkalan data; 3. Buat objek kursor; 4. Gunakan melaksanakan () atau executemany () untuk melaksanakan SQL dan menggunakan pertanyaan parameter untuk mengelakkan suntikan; 5. Gunakan Fetchall (), dan sebagainya untuk mendapatkan hasil; 6. komit () diperlukan selepas pengubahsuaian; 7. Akhirnya, tutup sambungan atau gunakan pengurus konteks untuk mengendalikannya secara automatik; Proses lengkap memastikan operasi SQL selamat dan cekap.

Cara mewujudkan persekitaran maya di python Cara mewujudkan persekitaran maya di python Aug 05, 2025 pm 01:05 PM

Untuk mewujudkan persekitaran maya Python, anda boleh menggunakan modul VENV. Langkah-langkahnya adalah: 1. Masukkan direktori projek untuk melaksanakan persekitaran python-mvenvenv untuk mewujudkan persekitaran; 2. Gunakan Sourceenv/Bin/Aktifkan ke Mac/Linux dan Env \ Scripts \ Aktifkan ke Windows; 3. Gunakan Pakej Pemasangan Pipinstall, PipFreeze> Keperluan.txt untuk mengeksport kebergantungan; 4. Berhati -hati untuk mengelakkan menyerahkan persekitaran maya ke Git, dan mengesahkan bahawa ia berada dalam persekitaran yang betul semasa pemasangan. Persekitaran maya boleh mengasingkan kebergantungan projek untuk mencegah konflik, terutamanya sesuai untuk pembangunan pelbagai projek, dan editor seperti pycharm atau vscode juga

Python baca baris fail mengikut talian contoh Python baca baris fail mengikut talian contoh Jul 30, 2025 am 03:34 AM

Cara yang disyorkan untuk membaca fail garis mengikut baris di Python adalah menggunakan WithOpen () dan untuk gelung. 1. Gunakan WithOpen ('Example.txt', 'R', encoding = 'UTF-8') Asfile: Untuk memastikan penutupan fail yang selamat; 2. Gunakan ForlineInfile: untuk merealisasikan bacaan line-by-line, mesra memori; 3. Gunakan line.strip () untuk menghapuskan aksara line-by-line dan aksara ruang putih; 4. Tentukan pengekodan = 'UTF-8' untuk mengelakkan kesilapan pengekodan; Teknik lain termasuk melangkau garis kosong, membaca garis N sebelum, mendapatkan nombor garis dan garis pemprosesan mengikut keadaan, dan sentiasa mengelakkan pembukaan manual tanpa penutupan. Kaedah ini lengkap dan cekap, sesuai untuk pemprosesan fail yang besar

Cara menjalankan skrip python dengan argumen di vscode Cara menjalankan skrip python dengan argumen di vscode Jul 30, 2025 am 04:11 AM

TorunaPythonscriptwithargumentsinVSCode,configurelaunch.jsonbyopeningtheRunandDebugpanel,creatingoreditingthelaunch.jsonfile,andaddingthedesiredargumentsinthe"args"arraywithintheconfiguration.2.InyourPythonscript,useargparseorsys.argvtoacce

See all articles