Parse

Sunmy Lv5

Parse 学习

正则表达式的替代品

安装

1
pip install parse

特性与用法

parse 的 API 与Python Regular Expressions近似,主要就是 parse, search 及 findall 这三个方法。一些基础的使用可以通过 parse 的文档来了解。

pattern 的格式

parse 的格式与 python format syntas 非常类似。可以通过{}或者{field_name}来对匹配的文本进行捕获。

测试样例

简单使用

1
2
3
res = parse("It's {}, I love it!", "It's spam, I love it!")
print(res, type(res))
print(res[0])

命名提取

1
2
res = parse("It's {food}, I love it!", "It's spam, I love it!")
print(f"res: {res}\nres['food']: {res['food']},\ntype(res): {type(res)}")
1
2
3
res: <Result () {'food': 'spam'}>
res['food']: spam,
type(res): <class 'parse.Result'>

类型转换 指定提取的数据类型

1
2
3
4
5
print("=" * 20)
res = search("Age: {number:d}\n", "Name: Rufus\nAge: 42\nColor: red\n")
print(
f"res: {res}\nres['number']: {res['number']},\ntype(res['number']): {type(res['number'])}"
)
1
2
3
res: <Result () {'number': 42}>
res['number']: 42,
type(res['number']): <class 'int'>

测试脚本

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
29
30
31
32
33
34
35
36
37
38
39
40
# coding=utf-8
"""
@File : PythonStudy.py
@Time : 2025/01/16 09:42:34
@Author : Sunmy
@Description: Parse学习
"""

from parse import *

# 简单匹配
res = parse("It's {}, I love it!", "It's spam, I love it!")
# print(res, type(res))
# print(res[0])
"""
<Result ('spam',) {}> <class 'parse.Result'>
spam
"""

print("=" * 20)
# 命名匹配
res = parse("It's {food}, I love it!", "It's spam, I love it!")
print(f"res: {res}\nres['food']: {res['food']},\ntype(res): {type(res)}")

# 类型转换 指定提取的数据类型
print("=" * 20)
res = search("Age: {number:d}\n", "Name: Rufus\nAge: 42\nColor: red\n")
print(
f"res: {res}\nres['number']: {res['number']},\ntype(res['number']): {type(res['number'])}"
)

print("=" * 20)
log_line = "2023-10-05 12:34:56 INFO User logged in: username=alice"
pattern = "{date} {timestamp} {level} {message}"
result = parse(pattern, log_line)
print(result["date"]) # 输出: 2023-10-05 12:34:56
print(result["timestamp"]) # 输出: 2023-10-05 12:34:56
print(result["level"]) # 输出: INFO
print(result["message"]) #

  • 标题: Parse
  • 作者: Sunmy
  • 创建于 : 2025-04-30 17:05:23
  • 更新于 : 2025-06-29 21:05:24
  • 链接: https://ldspdvsun.github.io/cmchvp8g7003fh0gbhnyu3s0f/
  • 版权声明: 版权所有 © Sunmy,禁止转载。
评论