在两个标记之间捕获字符串的最短解决方案是什么?
例如,假设我有
blahblahblah --- foobar-- blahblahblah
我想捕捉“foobar”。
我可以使用正则表达式轻松捕获字符串“---foobar--”。
但是由于我不想要前缀“---”和后缀“--”,我需要很多步骤来清理结果:
- 获取前缀“---”的位置(因为我们已经捕获了这个块,所以我们知道位置是 0)
- 获取“---”的长度(为了示例,假设我们不知道限制器的大小,它可以是“---”或“--”或“-”)
- 获取后缀“--”的位置,从位置 position_prefix+prefix_length 开始
- position_prefix+prefix_length 和 position_suffix 之间的子字符串
当然,如果我需要的话,我可以自己构建一个这样的功能来做到这一点,但是是否已经有内置的解决方案呢?
类似 captureWithoutDelimiters(group_regex, prefix_regex, suffix_regex) 的东西?