Author: Charlie Fu Date: To: pcre-dev@exim.org Subject: [pcre-dev] A question for PCRE
Hi,
PCRE is very powerful tools. When I use it in my project, I have met a bug.
I used
" (\b(([a-zA-Z0-9\!\#\$\%\&\'\*\+\-\/\=\?\%_\`\{\|\}\~\.]+@)?)(((ftp|https?):\/\/)?[-\w]+\.([-\w]+\.)*(\d+\.\d+\.\d+|[-A-Za-z]+)(:\d+)?(((\/([A-Za-z0-9\-\._~:\/\?\#\[\]\@\!\$\&\'\(\)\*\+\,\;\=])*)+)\??([A-Za-z0-9\-\._~:\/\?\#\[\]\@\!\$\&\'\(\)\*\+\,\;\=\%])*)?)([^A-Za-z]|$))”
to grep url. But When I run in main thread everything work fine. But when I run in other thread. PCRE will match in loop more 976 times. And the project will crash. I have tried to improve the stack. But it also failed.
Could you tell me the reason? Or is my regex string was error? Thank you.