Python RegEx
- Rufe Baje Python JSON
- Baya Baje Python PIP
RegEx ko kuma sabonin na bayyana girmuwarin na nazarin
RegEx za iya yin girmuwarin da na cikin string a cikin sabonin da an zartar
Modulu RegEx
Python yana mutumma ne re
的内置包,可用于处理正则表达式。
导入 re
模块:
import re
Python 中的 RegEx
导入 re
模块后,就可以开始使用正则表达式了:
Misali
检索字符串以查看它是否以 "China" 开头并以 "country" 结尾:
import re txt = "China is a great country" x = re.search("^China.*country$", txt)
RegEx 函数
re
模块提供了一组函数,允许我们检索字符串以进行匹配:
函数 | ba da |
---|---|
findall | 返回包含所有匹配项的列表 |
search | 如果字符串中的任意位置存在匹配,则返回 Match 对象 |
split | 返回在每次匹配时拆分字符串的列表 |
sub | 用字符串替换一个或多个匹配项 |
元字符
元字符是具有特殊含义的字符:
字符 | ba da | 示例 | TIY |
---|---|---|---|
[] | 一组字符 | "[a-m]" | ci gaba |
\ | 示意特殊序列(也可用于转义特殊字符) | "\d" | ci gaba |
. | 任何字符(换行符除外) | "he..o" | ci gaba |
^ | 起始于 | "^hello" | ci gaba |
$ | 结束于 | "world$" | ci gaba |
* | 零次或多次出现 | "aix*" | ci gaba |
+ | 一次或多次出现 | "aix+" | ci gaba |
{} | 确切地指定的出现次数 | "al{2}" | ci gaba |
| | 两者任一 | "falls|stays" | ci gaba |
()` | 捕获和分组 |
特殊序列
特殊序列指的是 \
后跟下表中的某个字符,拥有特殊含义:
字符 | ba da | 示例 | TIY |
---|---|---|---|
\A | 如果指定的字符位于字符串的开头,则返回匹配项 | "\AThe" | ci gaba |
\b | 返回指定字符位于单词的开头或末尾的匹配项 |
r"\bain" r"ain\b" |
ci gaba ci gaba |
\B | 返回指定字符存在的匹配项,但不在单词的开头(或结尾处) |
r"\Bain" r"ain\B" |
ci gaba ci gaba |
\d | 返回字符串包含数字的匹配项(数字 0-9) | "\d" | ci gaba |
\D | 返回字符串不包含数字的匹配项 | "\D" | ci gaba |
\s | 返回字符串包含空白字符的匹配项 | "\s" | ci gaba |
\S | 返回字符串不包含空白字符的匹配项 | "\S" | ci gaba |
\w | 返回一个匹配项,其中字符串包含任何单词字符 (从 a 到 Z 的字符,从 0 到 9 的数字和下划线 _ 字符) |
"\w" | ci gaba |
\W | 返回一个匹配项,其中字符串不包含任何单词字符 | "\W" | ci gaba |
\Z | 如果指定的字符位于字符串的末尾,则返回匹配项 | "Spain\Z" | ci gaba |
集合(Set)
ciki (Set) ita ce kiyace-kiyace a ciki, wanda ke da kiyace-kiyace a ciki []
a ciki na ciki, wanda ke da mahimmanci da yawa:
ciki | ba da | ci gaba |
---|---|---|
[arn] | a ciki na a kaiwa aiki a kaiwa aiki | ci gaba |
[a-n] | a ciki na a kaiwa aiki a kaiwa aiki | ci gaba |
[^arn] | a ciki na a kaiwa aiki a kaiwa aiki | ci gaba |
[0123] | a ciki na a kaiwa aiki a kaiwa aiki | ci gaba |
[0-9] | a ciki na a kaiwa aiki a kaiwa aiki | ci gaba |
[0-5][0-9] | a ciki na a kaiwa aiki a kaiwa aiki | ci gaba |
[a-zA-Z] | a ciki na a kaiwa aiki a kaiwa aiki, kuma a kaiwa aiki a kaiwa aiki | ci gaba |
[+] | a ciki, +, *, ., |, (), $, {} suna da yawa, kuma [+] yana nufin: | ci gaba |
fannan findall()
findall()
fannan kuma ta a gina tsarin a kaiwa aiki a kaiwa aiki
Misali
a ciki na a kaiwa aiki a kaiwa aiki
import re str = "China is a great country" x = re.findall("a", str) print(x)
a kowane a kaiwa aiki a kaiwa aiki a kaiwa aiki
a kowane a kaiwa aiki a kaiwa aiki
Misali
a kowane a kaiwa aiki a kaiwa aiki
import re str = "China is a great country" x = re.findall("USA", str) print(x)
fannan search()
search()
fannan kuma ta a nazarin a kaiwa aiki a kaiwa aiki, kowane a kaiwa aiki a kaiwa aiki
a kowane a kaiwa aiki a kaiwa aiki
Misali
yana nazarin kanananin dake a kaiwa aiki
import re str = "China is a great country" x = re.search("\s", str) print("The first white-space character is located in position:", x.start())
a kowane a kaiwa aiki a kaiwa aiki None
:
Misali
yana nazarin a kaiwa aiki
import re str = "China is a great country" x = re.search("USA", str) print(x)
fannan split()
split()
fannan kuma ta a gina tsarin a kaiwa aiki a kowane aiki
Misali
yana kaiya a kaiwa kanananin dake
import re str = "China is a great country" x = re.split("\s", str) print(x)
Zai iya kawo amfani da maxsplit
amfani da dona a kaiwa aiki
Misali
yana kaiya kafin a kaiwa aiki
import re str = "China is a great country" x = re.split("\s", str, 1) print(x)
fannan sub()
sub()
fannan kuma ta yin aiki na mutum
Misali
da 9 ya a kanananin dake
import re str = "China is a great country" x = re.sub("\s", "9", str) print(x)
Zai iya kawo amfani da count
Paramita don kawo karshen koyin:
Misali
Koyi daga sabon hanyar:
import re str = "China is a great country" x = re.sub("\s", "9", str, 2) print(x)
Obaje Kwallon Kwallon
Obaje Kwallon Kwallon yana da dukkanin ta'amurin da a samu game da nazarin da a samu:
Iyali:Daga bai kuma a samu, za a cika kashi None
daga, ba Match Obaje ba.
Misali
A zama za a samu Obaje Kwallon Kwallon
import re str = "China is a great country" x = re.search("a", str) print(x) # Za a cika da shirin obaje
Match Obaje ya bayyana dukkanin hanyoyin da za a iya samun ta'amurin da a samu:
span()
Ciki da takaluma na farko da kusa.string
Ciki da kalmomi da a shiryagroup()
Ciki da kalmomi da a samu
Misali
Ciki da kalmomi da a samu a farko (tunawa da kusa).
Tafiyar Kwallon Kwallon da ke haɗa da kiyayya "C" a cikin kalmomi:
import re str = "China is a great country" x = re.search(r"\bC\w+", str) print(x.span())
Misali
Ciki da kalmomi da a shirya
import re str = "China is a great country" x = re.search(r"\bC\w+", str) print(x.string)
Misali
Ciki da kalmomi da a samu
Tafiyar Kwallon Kwallon da ke haɗa da kiyayya "C" a cikin kalmomi:
import re str = "China is a great country" x = re.search(r"\bC\w+", str) print(x.group())
Iyali:Daga bai kuma a samu, za a cika kashi None
daga, ba Match Obaje ba.
- Rufe Baje Python JSON
- Baya Baje Python PIP