


Einführung in das re-Modul und reguläre Ausdrücke in Python (mit Code)
Dieser Artikel bietet Ihnen eine Einführung in das Re-Modul und die regulären Ausdrücke in Python. Ich hoffe, dass er Ihnen als Referenz dienen wird.
Regulärer Ausdruck (englisch: Regular Expression, im Code oft als Regex, Regexp oder RE abgekürzt), auch bekannt als regulärer Ausdruck, regulärer Ausdruck, regulärer Ausdruck, regulärer Ausdruck, regulärer Ausdruck, ist ein Konzept in der Informatik . Reguläre Ausdrücke verwenden eine einzelne Zeichenfolge, um eine Reihe von Zeichenfolgen zu beschreiben und abzugleichen, die einer bestimmten Syntaxregel entsprechen. In vielen Texteditoren werden häufig reguläre Ausdrücke verwendet, um Text abzurufen und zu ersetzen, der einem bestimmten Muster entspricht.
Regeln für reguläre Ausdrücke, Einzelzeichenübereinstimmung
字符 | 功能 | 正则表达式示例 | 符合匹配示例 |
---|---|---|---|
. | 匹配任意一个字符(除了n) | b.b | bab,b2b |
[ ] | 匹配来自[]中字符集的任意一个字符 | i [abCde]m | i am |
d | 匹配任何十进制数字,与[0-9]一致 | wdcschool | w3cschool |
D | 匹配非数字,即不是数字 | mouDh | mouth |
s | 匹配任何空格字符,与[ntrvf]相同 | islike | i like |
S | 匹配任何非空白字符,与s相反 | nSe | noe,n3e |
w | 匹配任何字母数字字符,与[A-Za-z0-9_]相同 | [A-Za-z]w+ | |
W | 匹配非单词字符 | [0-9]W[A-Z] | 3 A |
gibt Mengenübereinstimmung an
字符 | 功能 | 正则表达式示例 | 符合匹配的示例 | |
---|---|---|---|---|
* | 匹配0次或者多次前面出现的正则表达式,即可有可无 | a* | aaa | |
+ | 匹配前一个字符出现1次或者无限次,即至少有一次 | a+ | aaa | |
? | 匹配前一个字符出现1次或者0次,要么有一次,要么没有 | a? | a或者b | |
{m} | 匹配前一个字符出现m次 | [0-9]{5} | 12345 | |
{m.} | 匹配前一个字符至少出现m次 | a{5.} | aaaaa | |
{m,n} | 匹配前一个字符出现从m到n次 | a{2,6} | aaa |
gibt Grenzübereinstimmung an
字符 | 功能 | 正则表达式示例 |
---|---|---|
^ | 匹配字符串起始部分 | ^Dear |
$ | 匹配字符串终止部分 | fi$ |
b | 匹配任何单词的边界 | bTheb |
B | 匹配非单词边界 | .*Bver |
Übereinstimmungsgruppe
字符 | 功能 | |
---|---|---|
匹配左右任意一个表达式 | ||
(ab) | 将括号中字符作为一个分组 | |
num | 引用分组num匹配到的字符串 | |
(?P |
分组起别名 | |
(?P=name) | 引用别名为name分组匹配到的字符串 |
re-Modul
In Python können Sie das integrierte re-Modul verwenden, um reguläre Ausdrücke zu verwenden
Gemeinsame Funktionen und Methoden des Re-Moduls
核心函数 | 说明 |
---|---|
compile(pattern,flags=0) | 使用任何可选的标记来编译正则表达式的模式,然后返回一个正则表达式对象 |
re模块函数和正则表达式对象方法 | 说明 |
---|---|
match(pattern,string,flags=0) | 尝试使用带有可选的标记的正则表达式的模式来匹配字符串。如果匹配成功,就返回匹配对象; 如果失败,就返回 None |
search(pattern,string,flags=0) | 使用可选标记搜索字符串中第一次出现的正则表达式模式。 如果匹配成功,则返回匹配对象; 如果失败,则返回 None |
findall(pattern,string,[,flags]) | 查找字符串中所有出现的正则表达式,并返回一个列表 |
split(pattern,string,max=0) | 根据正则表达式的模式分隔符,spilt函数将字符串分割为列表,然后返回成功匹配的列表,分割最多操作max次(默认分割所有匹配成功的位置) |
sub(pattern,repl,string,count=0) | 使用repl替换所有正则表达式的模式在字符串中出现的位置,除非定义count,否则就将替换所有出现的位置 |
常用的匹配对象方法 | 说明 |
---|---|
group(num=0) | 默认返回整个匹配对象或者返回编号为num的特定子组 |
groups(default=None) | 返回一个包含所有匹配子组的元组,如果没有成功匹配,返回一个空元组 |
span() |
常用的模块属性,大多数用于对正则表达式函数的修饰 | 说明 |
---|---|
re.I | 使匹配对大小写不敏感(忽略大小写) |
re.S | .(点号)匹配除了n之外的所有字符,re.S标记表示.(点号)能够匹配全部字符 |
re.M | 多行匹配,影响^和$ |
re.U | 根据Unicode字符集解析字符。影响w,W,b和B |
re.X | 该标志通过给予你更灵活的格式以便你讲正则表达式写得更易于理解 |
Allgemeine Verwendung des re-Moduls
Verwenden Sie die Funktion
compile()
, um die Zeichenfolgenform eines regulären Ausdrucks in ein reguläres Ausdrucksobjekt zu kompilieren.gleicht den Text über eine Reihe von Methoden ab, die vom regulären Ausdrucksobjekt bereitgestellt werden (z. B.:
match()
) und erhält das Übereinstimmungsergebnis, einMatch
-Objekt 🎜> Abschließend nutzen Sie die vom - -Objekt bereitgestellten Eigenschaften und Methoden (z. B.
), um Informationen abzurufen und bei Bedarf weitere Vorgänge auszuführen.
Match
group()
Beispiel zur Verwendung des Moduls
import re
Funktioncompile()
Die Kompilierungsfunktion wird zum Kompilieren regulärer Ausdrücke und zum Generieren eines Musterobjekts verwendet. Die allgemeine Verwendungsform lautet wie folgt:
import re # 将正则表达式编译成pattern对象 pattern = re.compile(r'\d+')
Nach dem Kompilieren in ein reguläres Ausdrucksobjekt können Sie die oben erwähnte Methode des regulären Ausdrucksobjekts verwenden. Die
-Methode match()
Match-Methode wird verwendet, um den Kopf der Zeichenfolge zu finden (die Startposition kann ebenfalls angegeben werden). Es handelt sich um eine -Übereinstimmung, solange Sobald eine Übereinstimmung gefunden wird, werden die Ergebnisse zurückgegeben, anstatt nach allen übereinstimmenden Ergebnissen zu suchen. Die allgemeine Verwendungsform lautet wie folgt:
match(string[, pos[, endpos]])
一次
wobei string die abzugleichende Zeichenfolge ist, pos und endpos optionale Parameter sind, die die Positionen und der Zeichenfolge angeben sind jeweils 0 und 起始
(Stringlänge). Wenn Sie also pos und endpos nicht angeben, vergleicht die Match-Methode standardmäßig den Kopf der Zeichenfolge. 终点
len
Wenn die Übereinstimmung erfolgreich ist, wird ein Match-Objekt zurückgegeben. Wenn keine Übereinstimmung vorliegt, wird „None“ zurückgegeben.
>>> import re >>> >>> pattern = re.compile(r'\d+') # 正则表达式表示匹配至少一个数字 >>> >>> m = pattern.match("one2three4") # match默认从开头开始匹配,开头是字母o,所以没有匹配成功 >>> print(m) # 匹配失败返回None None >>> >>> m = pattern.match("1two3four") # 开头字符是数字,匹配成功 >>> print(m) <_sre.SRE_Match object; span=(0, 1), match='1'> >>> >>> m.group() # group()方法获取匹配成功的字符 '1' >>> m = pattern.match("onetwo3four56",6,12) # 指定match从数字3开始查找,第一个是数字3,匹配成功 >>> print(m) <_sre.SRE_Match object; span=(6, 7), match='3'> >>> m.group() '3'
Das obige ist der detaillierte Inhalt vonEinführung in das re-Modul und reguläre Ausdrücke in Python (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP und Python haben ihre eigenen Vor- und Nachteile, und die Wahl hängt von den Projektbedürfnissen und persönlichen Vorlieben ab. 1.PHP eignet sich für eine schnelle Entwicklung und Wartung großer Webanwendungen. 2. Python dominiert das Gebiet der Datenwissenschaft und des maschinellen Lernens.

Python und JavaScript haben ihre eigenen Vor- und Nachteile in Bezug auf Gemeinschaft, Bibliotheken und Ressourcen. 1) Die Python-Community ist freundlich und für Anfänger geeignet, aber die Front-End-Entwicklungsressourcen sind nicht so reich wie JavaScript. 2) Python ist leistungsstark in Bibliotheken für Datenwissenschaft und maschinelles Lernen, während JavaScript in Bibliotheken und Front-End-Entwicklungsbibliotheken und Frameworks besser ist. 3) Beide haben reichhaltige Lernressourcen, aber Python eignet sich zum Beginn der offiziellen Dokumente, während JavaScript mit Mdnwebdocs besser ist. Die Wahl sollte auf Projektbedürfnissen und persönlichen Interessen beruhen.

Aktivieren Sie die Pytorch -GPU -Beschleunigung am CentOS -System erfordert die Installation von CUDA-, CUDNN- und GPU -Versionen von Pytorch. Die folgenden Schritte führen Sie durch den Prozess: Cuda und Cudnn Installation Bestimmen Sie die CUDA-Version Kompatibilität: Verwenden Sie den Befehl nvidia-smi, um die von Ihrer NVIDIA-Grafikkarte unterstützte CUDA-Version anzuzeigen. Beispielsweise kann Ihre MX450 -Grafikkarte CUDA11.1 oder höher unterstützen. Download und installieren Sie Cudatoolkit: Besuchen Sie die offizielle Website von Nvidiacudatoolkit und laden Sie die entsprechende Version gemäß der höchsten CUDA -Version herunter und installieren Sie sie, die von Ihrer Grafikkarte unterstützt wird. Installieren Sie die Cudnn -Bibliothek:

Docker verwendet Linux -Kernel -Funktionen, um eine effiziente und isolierte Anwendungsumgebung zu bieten. Sein Arbeitsprinzip lautet wie folgt: 1. Der Spiegel wird als schreibgeschützte Vorlage verwendet, die alles enthält, was Sie für die Ausführung der Anwendung benötigen. 2. Das Union File System (UnionFS) stapelt mehrere Dateisysteme, speichert nur die Unterschiede, speichert Platz und beschleunigt. 3. Der Daemon verwaltet die Spiegel und Container, und der Kunde verwendet sie für die Interaktion. 4. Namespaces und CGroups implementieren Container -Isolation und Ressourcenbeschränkungen; 5. Mehrere Netzwerkmodi unterstützen die Containerverbindung. Nur wenn Sie diese Kernkonzepte verstehen, können Sie Docker besser nutzen.

Minio-Objektspeicherung: Hochleistungs-Bereitstellung im Rahmen von CentOS System Minio ist ein hochleistungsfähiges, verteiltes Objektspeichersystem, das auf der GO-Sprache entwickelt wurde und mit Amazons3 kompatibel ist. Es unterstützt eine Vielzahl von Kundensprachen, darunter Java, Python, JavaScript und Go. In diesem Artikel wird kurz die Installation und Kompatibilität von Minio zu CentOS -Systemen vorgestellt. CentOS -Versionskompatibilitätsminio wurde in mehreren CentOS -Versionen verifiziert, einschließlich, aber nicht beschränkt auf: CentOS7.9: Bietet einen vollständigen Installationshandbuch für die Clusterkonfiguration, die Umgebungsvorbereitung, die Einstellungen von Konfigurationsdateien, eine Festplattenpartitionierung und Mini

Pytorch Distributed Training on CentOS -System erfordert die folgenden Schritte: Pytorch -Installation: Die Prämisse ist, dass Python und PIP im CentOS -System installiert sind. Nehmen Sie abhängig von Ihrer CUDA -Version den entsprechenden Installationsbefehl von der offiziellen Pytorch -Website ab. Für CPU-Schulungen können Sie den folgenden Befehl verwenden: PipinstallTorChTorChVisionTorChaudio Wenn Sie GPU-Unterstützung benötigen, stellen Sie sicher, dass die entsprechende Version von CUDA und CUDNN installiert ist und die entsprechende Pytorch-Version für die Installation verwenden. Konfiguration der verteilten Umgebung: Verteiltes Training erfordert in der Regel mehrere Maschinen oder mehrere Maschinen-Mehrfach-GPUs. Ort

Bei der Installation von PyTorch am CentOS -System müssen Sie die entsprechende Version sorgfältig auswählen und die folgenden Schlüsselfaktoren berücksichtigen: 1. Kompatibilität der Systemumgebung: Betriebssystem: Es wird empfohlen, CentOS7 oder höher zu verwenden. CUDA und CUDNN: Pytorch -Version und CUDA -Version sind eng miteinander verbunden. Beispielsweise erfordert Pytorch1.9.0 CUDA11.1, während Pytorch2.0.1 CUDA11.3 erfordert. Die Cudnn -Version muss auch mit der CUDA -Version übereinstimmen. Bestimmen Sie vor der Auswahl der Pytorch -Version unbedingt, dass kompatible CUDA- und CUDNN -Versionen installiert wurden. Python -Version: Pytorch Official Branch

Das Aktualisieren von PyTorch auf der neuesten Version von CentOS kann die folgenden Schritte ausführen: Methode 1: Aktualisieren von PIP mit PIP: Stellen Sie zunächst sicher, dass Ihr PIP die neueste Version ist, da ältere Versionen von PIP möglicherweise nicht in der Lage sind, die neueste Version von PyTorch ordnungsgemäß zu installieren. Pipinstall-upgradePip Die alte Version von Pytorch (falls installiert): PipuninstallTorChTorChVisionTorChaudio-Installation Neueste
