只是在Python中学习RegEx,并陷入这种情况:
str = '''
Here are some order bullets:
- i. Foo
- ii. Bar
- iii. Baz
- iv. YOLO
...
- x. LOL
'''
我如何做到这一点:
{{1}}
答案 0 :(得分:3)
您可以在MULTILINE
模式下使用此正则表达式:
>>> print re.sub(r'(?m)^([a-zA-Z0-9]+\.)', r'- \1', str)
Here are some order bullets:
- i. Foo
- ii. Bar
- iii. Baz
- iv. YOLO
...
- x. LOL
RegEx分手:
搜索:强>
(?m)
:启用MULTILINE模式^
:开始([a-zA-Z0-9]+\.)
:匹配并分组1个以上的字母数字字符<强>替换强>
-
:放置文字"- "
\1
:对已捕获的组#1的反向引用