我正在用Python创建一个正则表达式,需要在字符串中查找空格
示例
000#0123456789#ASimpleName#123456 000#987654321#OtherSimpleName#8765432
000#0123456789#ASimpleName#EUA 000#987654321#OtherSimpleName#8765432
在这种情况下,如果我使用re.split('\s'
),我可以解决问题,但是我可以找到
000#0123456789#A simple Name#123456 000#987654321#Other Simple Name#8765432
000#0123456789#ASimpleName#EUA 000#987654321#OtherSimpleName#8765432
我尝试使用此表达式[\d|\w]\s\d
,但是Regex得到6 0
和A 0
,但是我只需要空格。
答案 0 :(得分:3)
您可以将以下正则表达式与re.split
一起使用:
\s+(?=000#)
或者,如果可能有3位数字:
\s+(?=\d{3}#)
请参见regex demo和https://jex.im/regulex图:
详细信息
\s+
-匹配并消耗1个或多个空格字符(?=\d{3}#)
-确保在当前位置的右边紧跟着3位数字,后跟#
。 (?=000#)
仅在三个数字为零时返回true。 #
在这里可能不是必需的,但这取决于实际数据和要求。