so, this is indeed a bug that exists within the PCRE demo code - which mIRC presumably uses - and the author has adapted the code to handle these cases. you can see some of the discussion here: https://bugs.exim.org/show_bug.cgi?id=2211

we continued the discussion privately thereafter (since i have my own opinions on how the edge cases of \K in assertions should play out), but the long and short of it is that until the Perl community comes to a consensus on how \K should be handled in assertions, the updated demo code should be used to avoid these infinite loops. though the updates were given in the demo code for PCRE2, they are fully compatible with the version of PCRE that mIRC uses.


"The only excuse for making a useless script is that one admires it intensely" - Oscar Wilde