如何在正则表达式匹配后 select n 个字符

How to select n character after regex match

我有 url 'http:abc.com/test/test1/123-343$fsdsf$gdgdgfdgfdg35435435'

我想 select 36 个字符出现在 'http:abc.com/test/test1/' 之后 我写了符合模式的正则表达式 (?<=http[s]?://abc.com/\w*/\w*/) 。 问题出在 select 或者。 我想 select 模式匹配后的下一个 36 个字符。

我正在尝试 (?<=http[s]?://abc.com/\w*/\w*/){36} 但它不起作用。

最大的问题是模式匹配后可能会出现少于 36 个字符。 我也想处理这种情况。 即如果模式匹配后出现的字符少于 36,则 select 模式匹配后出现的字符数是多少。

(?<=https?:\/?\/?abc\.com\/[^\/]*\/[^\/]*\/).{1,36}

你可以试试这个。{1,36} 将允许捕获字符,即使它小于 36