re 正则表达式
程序员文章站
2024-02-06 23:47:52
...
python 中 常用的 调用 正则表达式 来 进行 字符串的 模式匹配的方法:
re 库 ( search 只找 第一次 出现的 找到即返回 findall 找所有并且将结果 以列表的形式返回)
re.findall(pattern,string) re.search(pattern,string) re.sub(pattern,to,string)
pat = re.compile (pattern) pat.search(string)
# -*- codeing = utf-8 -*-
# @Time : 12/03/2020 07:58 PM
# @Author : Gyp
# @File : testRe
#正则表达式 : 字符串模式 (判断字符串是否符合一定的标准)
import re
str = "ABCDAABBCCAAAA"
# # 1---------------------------------
# #创建模式对象
# pat = re.compile("AA")
# #search 对象是被 效验 的内容
# res = pat.search(str) # 只会找到第一个匹配的
#
# print(res)
# 2----------------------------------
# res = re.search("AA",str) # 只会找到第一个匹配的
# print(res)
# 3----------------------------------
res = re.findall("[A][a-c]","aAcdAacde") # re.findall(pattern,string) 返回的是 所有符合要求的,列表形式
print(res)
# 一直找 直到不符合为止 将符合的原样输出
res = re.findall("[A-Z]+","ABCdefgHIJklmN") # 找大写字母串
print(res)
res = re.findall("[a-z]+","ABCdefgHIJklmN") # 找小写字母串
print(res)
res = re.findall("\d","123abc456def") # 找数字 \d == [0-9]
print(res)
res = re.findall("\d{2}","123abc456def") # 找数字 \d == [0-9]
print(res)
res = re.findall("\d{1,3}","123abc456def") # 找数字 \d == [0-9]
print(res)
res = re.findall("\w","123abc456def") # \w
print(res)
res = re.findall("[^a-z]","abc456def")
print(res)
# sub 替换 from pattern to repl by string
tmp = "ABCabcDEFGAAefgCCDDB"
print(re.sub('[a-z]+','|',tmp))
# 建议在 要比较的 字符串 前面 加上 r 不用担心 转义字符的 问题
tmp = r"\nasdf\`"
常用正则表达式大全 https://www.cnblogs.com/yanmuxiao/p/8674241.html
下面是一些正则表达式的常用操作符,无论哪一种语言目前都支持此语法