#!/usr/bin/env python
# -*- coding: utf-8 -*-
import re
text = "aaaa[ab][cd][ef]"
a = re.compile("^(\w+)(\[\w+\])*$").findall(text)
print a
Run Code Online (Sandbox Code Playgroud)
我需要所有这些,但它返回:
[('aaaa', '[ef]')]
Run Code Online (Sandbox Code Playgroud)
有:
a = re.compile("\[\w+\]").findall(text)
Run Code Online (Sandbox Code Playgroud)
我得到了所有这些,但第一个字出来......
['[ab]', '[cd]', '[ef]']
Run Code Online (Sandbox Code Playgroud)
这个文本是随机文本我把这个因为stackoverflow标准质量
最后我用这段代码做到了:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import re
text = "aaaa[ab][cd][ef]"
var = []
if re.match("^(\w+)(\[\w+\])*$", text):
a = re.findall("^\w+", text)[0]
var.append(a)
b = re.findall("\[\w+\]", text)
for i in b:
var.append(i)
print var
Run Code Online (Sandbox Code Playgroud)
输出:
['aaaa', '[ab]', '[cd]', '[ef]']
Run Code Online (Sandbox Code Playgroud)
所有这些解决方案都很棒,谢谢:)
| 归档时间: |
|
| 查看次数: |
2406 次 |
| 最近记录: |