如果有一个字符串 a=‘ bbbbaab ’ 我想要同时正则出‘ bb ’和‘ baab ’,应该怎么实现?
![]() |
1
chinvo 2017-08-02 10:51:49 +08:00 ![]() 虽然理论上 baab|bb 可以实现
不过我刚刚做了个小测试,发现会匹配两个 bb,baab 没有被匹配 如果你的 bb 一定是位于头部的,可以用 baab|^bb |
![]() |
2
knightdf 2017-08-02 11:13:49 +08:00 ![]() baab|bb(?!aab)
如果你想优先匹配 baab 的话:baab|(?<!baa)bb(?!aab) |
![]() |
3
araraloren 2017-08-02 11:46:15 +08:00
~~ 你这是想怎么匹配 ,bb 出现在字符串里的多个位置
|
![]() |
4
Yourshell 2017-08-02 12:52:02 +08:00 ![]() (bb?)(baab)
用 search 才行 |
![]() |
5
toan 2017-08-02 15:20:21 +08:00 ![]() b(aa)?b(?!aab)
|
6
JerryV2 2017-08-02 16:32:49 +08:00 ![]() b = re.match('(bb).*(baab)', a)
b.group(1) b.group(2) |
7
Zioyi OP 感谢各位大神给的思路
|