[英]How to add additional capture group to lookahead, lookbehind regex
我正在使用这个正则表达式: (?<=\[).+?(?=\])
来匹配下面我的测试字符串中的数据。
这个正则表达式匹配我括号之间的所有内容。 我还需要包含我的字符串的 '1234567890ABC...' 部分。 我该怎么做?
这是我的测试字符串:
[one] [two] [three] 1234567890ABC...
您可以使用\G
锚点并匹配除方括号外的任何字符,或匹配\w+
以仅匹配单词字符。
(?:\[|\G(?!^)]\h\[?)\K[^][\s]+
(?:
非捕获组
\[
匹配[
|
或者\G(?!^)
在上一场比赛中断言 position]\h\[?
匹配]
,水平空白字符和可选的[
)\K
关闭组并重置匹配缓冲区[^][\s]+
匹配除方括号或空白字符外的任何字符的 1+ 次您可以尝试这种模式,它与您使用的模式相同,但它还包括括号后的单词和数字
(?<=\[).+?(?=\])\d+|\w+
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.