我使用的是python3,我对RegEx还比较陌生。 我正在努力想出一个解决以下问题的好方法。 我有一个文本字符串(可以包括换行符等),其中包含多组信息。你知道吗
例如:
TAG1/123456 TAG2/ABCDEFG HISTAG3/A1B1C1D1 QWERTY TAG4/0987654321
TAG5/THE CAT SAT ON THE MAT MYTAG6/FLINTSTONE
TAG7/99887766AA
我需要把它解析成以下内容
TAG1/123456
TAG2/ABCDEFG
HISTAG3/A1B1C1D1 QWERTY
TAG4/0987654321
TAG5/THE CAT SAT ON THE MAT
MYTAG6/FLINTSTONE
TAG7/99887766AA
我似乎不知道如何处理可变长度标记:(TAG3和TAG5) 我总是捕捉到下一个标签
TAG5/THE CAT SAT ON THE MAT TAG6
实际上,标签本身也是可变的。大多数是3个字符后跟“/”,但不是全部。有些是4、5和6个字符长。但是所有的后面都跟“/”,除了第一个之外,所有的前面都是空格
更新信息我已经更新了示例以显示这些变量标记。但要澄清,标记可以是1-8个字母字符,前面有空格,以“/”结尾 标记后面的数据可以是一个或多个单词(字母数字),并且定义为在下一个标记开始或字符串结束之前,标记“/”后面的所有数据。你知道吗
任何指点都将不胜感激。你知道吗
我认为这是实现你想要的一种方法:
输出:
重要的位是非贪婪限定符
+?
和lookahead(?=$|\s+\w+/)
。你知道吗相关问题 更多 >
编程相关推荐