【发布时间】:2019-09-29 07:32:45
【问题描述】:
我有一个可变长度的值字符串(实际上是位:1 和 0,32 的倍数)。例如:
010011011001110111100111011010001001100011101100100011100010100011110010100011001111111101101001
每个 32 位块都包含一个内部结构:前 8 位和接下来的 24 位属于同一个。
我喜欢
- 获取每个 32 位块并
- 每个块的内部结构
在一个正则表达式中。
我的方法
^(([01]{8})([01]{24})){0,}$
没有成功,因为它只匹配最后一个块。
这样的正则表达式可能吗?要找什么?我做错了什么?
【问题讨论】:
-
你使用什么编程语言?
-
Java,但应该没关系吧?
-
内部结构是什么意思?预期的输出应该是什么?
-
使用这个:'(([01]{8})([01]{24}))' 并设置 'global' 标志,然后您将获得所有匹配项。
-
Java 没有 findall() 函数将这些值放入数组吗?您不必一次性匹配所有内容。
标签: regex regex-lookarounds regex-group regex-greedy