Rumah > Artikel > pembangunan bahagian belakang > Cara menggunakan re.findAll(), re.sub(), dan set() dalam Python
re.findall(): Fungsi mengembalikan senarai yang mengandungi semua padanan. Mengembalikan semua corak padanan rentetan dalam rentetan, dalam bentuk senarai/tatasusunan.
Seperti yang boleh dilihat daripada kod prototaip fungsi, fungsi findall() mempunyai tiga parameter:
1 corak: ‘ ungkapan ’
2: rentetan asal yang perlu diproses pada masa ini (cari dan gantikan
3: parameter pilihan, menunjukkan mod pemadanan yang digunakan semasa penyusunan seperti mengabaikan penulisan saiz, mod berbilang baris, dsb.), dalam bentuk angka, lalainya ialah 0
# 示例代码 import re text1 = '北京市海淀区不存在的38街区不想工作大厦99号' res = re.findall(r'\d+', text1) print(type(res)) print(res) # output # <class 'list'> # ['38', '99']
re.sub(): fungsi menggantikan semua item yang sepadan dengan teks yang dipilih dan mengembalikan hasilnya.
Seperti yang boleh dilihat daripada kod prototaip fungsi, fungsi re.sub() mempunyai lima parameter:
1 corak: ‘ ungkapan biasa String’;
2 repl: rentetan yang perlu diganti, iaitu menggantikan corak yang dipadankan dengan repl; perlu diproses ( Cari dan gantikan) rentetan asal; iaitu semua subrentetan yang dipadankan digantikan ;
5 bendera: parameter pilihan, menunjukkan mod pemadanan yang digunakan semasa penyusunan (seperti mengabaikan huruf besar, mod berbilang baris, dll.), dalam bentuk angka. lalai ialah 0
# 将所有匹配到的‘数字串' 替换为 '520‘ text1 = '北京市海淀区不存在的38街区不想工作大厦99号' res = re.re(r'\d+', 520) print(type(res)) print(res) # output,返回值res结果是str # <class 'str'> # 北京市海淀区不存在的520街区不想工作大厦520号
3. set ()
set(): Salah satu fungsi terbina dalam python, mencipta set tidak tertib elemen tidak berulang. Menyokong pengiraan persilangan, perbezaan dan kesatuan.
# 为list数组l1 去重 l1 = [1, 1, 2, 2, 2, 3, 4] s1 = set(l1) print(type(s1)) print(s1) # output,返回类型是 set # <class 'set'> # {1, 2, 3, 4}
# 计算l1 和 l2 的交集 l1 = [1, 1, 2, 2, 2, 3, 4] l2 = [2, 3, 3, 4, 5, 6, 6] s1 = set(l1) s2 = set(l2) u = s1 & s2 print(type(u)) print(u) # output,返回结果类型set # <class 'set'> # {2, 3, 4}
# 计算l1 和 l2 的并集, 并集符号 ‘|',intersection l1 = [1, 1, 2, 2, 2, 3, 4] l2 = [2, 3, 3, 4, 5, 6, 6] s1 = set(l1) # {1, 2, 3, 4} s2 = set(l2) # {2, 3, 4, 5, 6} u = s1 | s2 print(type(u)) print(u) # output,返回结果类型set, 计算 {1, 2, 3, 4} 和 {2, 3, 4, 5, 6} 的并集 # <class 'set'> # {1, 2, 3, 4, 5, 6}
# 计算差集,diff l1 = [1, 1, 2, 2, 2, 3, 4] l2 = [2, 3, 3, 4, 5, 6, 6] s1 = set(l1) # {1, 2, 3, 4} s2 = set(l2) # {2, 3, 4, 5, 6} print(s2) u = s1 - s2 print(type(u)) print(u) # output,返回结果是set # <class 'set'> # {1}
# set内也可以传入字符串,会自动转换成list类型 text1 = '北京市海淀区海淀区不想上班不想上班' res = set(text1) print(res) # 内部元素是一个个的字,去重 且 无序 # output # <class 'set'> # {'上', '北', '班', '海', '淀', '京', '不', '想', '区', '市'}
Atas ialah kandungan terperinci Cara menggunakan re.findAll(), re.sub(), dan set() dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!