Python正则表达式如何匹配特殊字符串!

Python正则表达式如何匹配特殊字符串!

作者:wjjontheway
文章主要介绍了如何使用Python正则表达式匹配和提取特定格式的字符串,通过示例,展示了如何从一串字符串中提取符合特定模式的子字符串,并输出结果,文章还提到了一些正则表达式的应用经验,并鼓励读者参考和使用脚本之家提供的资源。

Python正则表达式匹配特殊字符串

匹配特殊的字符串

匹配字符串中特定格式的字符串, 在一串字符串中,先找到特殊规则的substring, 然后再提取相关的位置value

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
strings = ['result-2023-08-18-6g1s1ch-DB9909'
'result-2023-08-18-4g1s3ch-DB9909',
'result-2023-08-18-1g4s1ch-DB9909',
'result-2023-08-18-1g1s1ch-DB9909']
pattern = r'(\d+)([Gg])(\d+)([Ss])(\d+)([Cc][Hh])'
results = []
for s in strings:
match = re.search(pattern, s)
if match:
print(match.group())
g = match.group(2#匹配第2个括号的内容
s = match.group(4#匹配第4个括号的内容
ch = match.group(6) #匹配第6个括号的内容
string = match.group(1) + g + match.group(3) + s + match.group(5) + ch
results.append(string)
print(results)
db_pattern = r'([Dd][Bb])(\d+)'
match = re.search(db_pattern, strings[0])
if match:
print(match.group())
db = match.group(1)      #匹配第2个括号的内容
number = match.group(2#匹配第4个括号的内容
db_number = db + number

输出内容

6g1s1ch
4g1s3ch
1g4s1ch
1g1s1ch
['6g1s1ch', '4g1s3ch', '1g4s1ch', '1g1s1ch']
DB9909

提取特殊的字符串

1
fullDump_pDevice00000286923A19B0_frame000_1g1s1ch.gfxbench_inst2_F535

pDevice后面可能是一串其他数字和字母,只需要截取从frame001开始的字符串,如:

1
frame000_1g1s1ch.gfxbench_inst2_F535
1
2
3
4
5
6
7
8
9
10
11
import re
s = "fullDump_pDevice00000286923A19B0_frame000_1g1s1ch.gfxbench_inst2_F535"
# Match the prefix to remove
prefix_pattern = r'^fullDump_pDevice\d+_'
# Use sub() to remove the matched prefix
result = re.sub(prefix_pattern, '', s)
print(result)

上述正则表达式并不能准确替换掉,输出结果还是原来的字符串:

1
fullDump_pDevice00000286923A19B0_frame000_1g1s1ch.gfxbench_inst2_F535

后使用如下表达式:

1
2
3
4
s = "fullDump_pDevice0000028fd3B19D0_frame000_1g1s1ch.gfxbench_inst2_F535"
prefix_pattern = r'^fullDump_pDevice(\d+)([A-Za-z0-9]+)_'
new = re.sub(prefix_pattern, "", s)
print(new)

输出结果:

frame000_1g1s1ch.gfxbench_inst2_F535

总结

以上为个人经验,希望能给大家一个参考。

 

 

 

学习资料见知识星球。

以上就是今天要分享的技巧,你学会了吗?若有什么问题,欢迎在下方留言。

快来试试吧,小琥 my21ke007。获取 1000个免费 Excel模板福利​​​​!

更多技巧, www.excelbook.cn

欢迎 加入 零售创新 知识星球,知识星球主要以数据分析、报告分享、数据工具讨论为主;

Excelbook.cn Excel技巧 SQL技巧 Python 学习!

你将获得:

1、价值上万元的专业的PPT报告模板。

2、专业案例分析和解读笔记。

3、实用的Excel、Word、PPT技巧。

4、VIP讨论群,共享资源。

5、优惠的会员商品。

6、一次付费只需129元,即可下载本站文章涉及的文件和软件。

文章版权声明 1、本网站名称:Excelbook
2、本站永久网址:http://www.excelbook.cn
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长王小琥进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报。
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。

THE END
分享
二维码
< <上一篇
下一篇>>