今天工作有一个需求就是捕获两个字符之间的字符串信息,类似就是AcakeB这个字符串中提取cake。

当时只想到如下的表达式:


A.*B

复制代码上述是将以A开头和以B结尾的字符串提取出来,但是本意是不想要有A和B了。

通过查资料发现了如下写法


(?<=A).*(?=B)

    io21

    A.*B 这样确实不能匹配出来中间字符,不过前瞻 / 后顾这个还是有点不太好记。直接用分组捕获吧,加个括号就行:

    A(.*)B

    捕获出来的结果 $1 分组就是中间字符了