拆分字符串,但保留分隔符,但不作为单独的元素
本文关键字:单独 元素 不作为 保留 字符串 拆分 分隔符 | 更新日期: 2023-09-27 18:04:36
我需要拆分下面的字符串
the quick brown fox jumps over the lazy dog
将转换为以下标记:
- 棕色狐狸快速跳过
- 懒狗
所以为了解释,我想在the
上进行分割,但是在前面的数组元素中包含the
分隔符(而不是作为它自己的单独元素)。
有没有人能解释一下这个问题,或者给我正确的正则表达式?
您需要使用后视(?<=
)。这个名字说明了一切,看看前面的字符是否匹配某个给定的模式。
这个应该可以工作:
"(?<=''bthe) "
因此,在任何空格处,检查前面的字符是否为"the"
,如果是,则匹配。
注意-我们还需要包括词边界''b
(转义的'b
),否则像"bathe"
这样的东西也会匹配。
如果没有后视,我们将检查所有空格:
v v v v v v v v
the quick brown fox jumps over the lazy dog
通过后看,我们只匹配前面有"the"
的
''b
) "the "
-刚刚找到一个空格,最后一个字符是"the"
,所以匹配。"quick "
-刚找到另一个空格,但最后一个字符是"...k"
,所以不匹配。
等。
测试。