【发布时间】:2017-06-22 13:54:40
【问题描述】:
例子:
r="\\%4l\\%(wit.*wit\\)\\|\\%8l\\%(rood.*rood\\)\\|\\%12l\\%(blauw.*blauw\\)\\|\\%13l\\%(wit.*wit\\)\\|\\%14l\\%(blauw.*blauw\\)\\|\\%15l\\%(wit.*wit\\)\\|\\%16l\\%(wit.*wit\\)\\|\\%17l\\%(rood.*rood\\)\\|\\%19l\\%(wit.*wit\\)\\|\\%21l\\%(blauw.*blauw\\)"
我想将字符串拆分为一个列表,但不是使用 1 个参数,而是使用 2 个参数。
- 首先我要捕获
l\\%(之前的数字 - 其次我想捕获
\\%(和\\)\\|之间的文本或者 在\\%(和\\)$之间的字符串结尾的情况下
输出:
[[4, "wit.*wit"], [8, "rood.*rood"], [12, "blauw.*blauw"], [13, "wit.*wit"], [14, "blauw.*blauw"], [15, "wit.*wit"], [16,"wit.*wit"], [17, "rood.*rood"], [19, "wit.*wit"], [21, "blauw.*blauw"]]
我尝试在\\| 处拆分字符串,然后用"" 替换每个不需要的字符。
有没有更好的方法在 Python 中做到这一点?
【问题讨论】:
标签: python regex list python-3.x split