@AhmedElassuty The '.' character should be escaped by backslash, and the [a-zA-Z0-9]* should have a + instead of a * because a star means that it can occur 0 times which is not valid for a url, you can use non white space character [\S]* . The expression should be something like this :
<b>/https?:\/\/(w{3})?\.[\S]+(.com|.org|.guc|.edu|.eg)+[\S]*</b>