正则表达式可匹配任意两个字符,其中两个字符以反斜杠开头,然后以空格开头 输出

我有一个这样的字符串示例:us-west,AAA 4589235i date=Wed\\ Dec\\ 12\\ 02:27:22\\ UTC\\ 2018

我想用空格分割它... ,但以'\'开头的空格除外。这样的字符串可能会有任何变化,并且空格之前可以加上"$&。我只想避免使用\,因为这是以我想忽略的转义符发送的数据。

如何精确匹配 <any character except '\'>\s

smithhyj 回答:正则表达式可匹配任意两个字符,其中两个字符以反斜杠开头,然后以空格开头 输出

我想,也许您正在尝试:

import re

string = '''us-west,AAA 4589235i date=Wed\\\\ Dec\\\\ 12\\\\ 02:27:22\\\\ UTC\\\\ 2018'''

expression = r'(?<!\\\\)\s'

print(re.split(expression,string))


输出

['us-west,AAA','4589235i','date=Wed\\\\ Dec\\\\ 12\\\\ 02:27:22\\\\ UTC\\\\ 2018']

如果您想简化/更新/探索表达式,请在regex101.com的右上角进行解释。如果您有兴趣,可以观看匹配的步骤或在this debugger link中进行修改。调试器演示了a RegEx engine如何逐步使用一些示例输入字符串并执行匹配过程的过程。


本文链接:https://www.f2er.com/3017154.html

大家都在问