真龙飞 发表于 2023-9-14 12:08:41

正则表达式,查找不包括定界符的两个字符之间包含的字符串

我需要从字符串中提取两个定界符之间包含的一组字符,而不返回定界符本身。
一个简单的例子应该会有所帮助:
目标:提取方括号之间的子字符串,而不返回括号本身。
基本字串:This is a test string
如果我使用以下规则。前任。
\ [。*?\]

比赛是。我只需要得到more or less(没有括号)。
有可能做到吗?
               
解决方案:
               


                简单易行:
(?从技术上讲,这是使用先行和后备。请参阅前瞻和零宽度断言。该模式包括:
前面有一个[未捕获(向后看);
一个非贪婪的捕获群体。停在第一个]是不贪心的;和
后跟一个未捕获的](超前)。
另外,您也可以捕获方括号之间的内容:
\[(.*?)\]

并返回第一个捕获的组,而不是整个匹配项。
页: [1]
查看完整版本: 正则表达式,查找不包括定界符的两个字符之间包含的字符串