Heim >Backend-Entwicklung >Python-Tutorial >So verwenden Sie re.findAll(), re.sub() und set() in Python

So verwenden Sie re.findAll(), re.sub() und set() in Python

王林
王林nach vorne
2023-05-16 10:19:051122Durchsuche

1. re.findall()

re.findall(): Die Funktion gibt eine Liste mit allen Übereinstimmungen zurück. Gibt alle Zeichenfolgen zurück, die mit dem Muster in Zeichenfolge übereinstimmen, in Form einer Liste/Array.

So verwenden Sie re.findAll(), re.sub() und set() in Python

Aus dem Funktionsprototypcode ist ersichtlich, dass die Funktion findall() drei Parameter hat:

1. Die „Musterzeichenfolge“ im regulären Ausdruck;

2 verarbeitet (Ersetzen finden);

3. Flags: optionaler Parameter, der den während der Kompilierung verwendeten Übereinstimmungsmodus angibt (z. B. Groß-/Kleinschreibung ignorieren, Mehrzeilenmodus usw.), der Standardwert ist 0

# 示例代码
import re
text1 = '北京市海淀区不存在的38街区不想工作大厦99号'
res = re.findall(r'\d+', text1)
print(type(res))
print(res)
# output
# <class &#39;list&#39;>
# [&#39;38&#39;, &#39;99&#39;]

2. re.sub ()

re.sub(): Die Funktion ersetzt alle Übereinstimmungen mit dem ausgewählten Text und gibt das Ergebnis zurück.

So verwenden Sie re.findAll(), re.sub() und set() in Python

Aus dem Funktionsprototypcode ist ersichtlich, dass die Funktion re.sub() fünf Parameter hat:

1: die „Musterzeichenfolge“ im regulären Ausdruck; in eine Zeichenfolge ersetzt werden, d Parameter, der angibt, was ersetzt werden muss. Die maximale Anzahl von Malen muss eine nicht negative Ganzzahl sein; der Standardwert ist 0, das heißt, alle übereinstimmenden Teilzeichenfolgen werden ersetzt; Während der Kompilierung (z. B. Ignorieren der Groß-/Kleinschreibung, Mehrzeilenmodus usw.) ist der Standardwert in numerischer Form 0

# 将所有匹配到的‘数字串&#39; 替换为 &#39;520‘
text1 = &#39;北京市海淀区不存在的38街区不想工作大厦99号&#39;
res = re.re(r&#39;\d+&#39;, 520)
print(type(res))
print(res)
# output,返回值res结果是str
# <class &#39;str&#39;>
# 北京市海淀区不存在的520街区不想工作大厦520号

3. set()

set(): Eine der integrierten Funktionen von Python erstellt eine ungeordnete Satz sich nicht wiederholender Elemente. Unterstützt die Berechnung von Schnittmenge, Differenz und Vereinigung.

# 为list数组l1 去重
l1 = [1, 1, 2, 2, 2, 3, 4]
s1 = set(l1)
print(type(s1))
print(s1)
# output,返回类型是 set
# <class &#39;set&#39;>
# {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 &#39;set&#39;>
# {2, 3, 4}
# 计算l1 和 l2 的并集, 并集符号 ‘|&#39;,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 &#39;set&#39;>
# {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 &#39;set&#39;>
# {1}
rrree

Das obige ist der detaillierte Inhalt vonSo verwenden Sie re.findAll(), re.sub() und set() in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen