Note

Regular Expression Note

Non Capturing Group (?:)

Ignoring the groups start with ?: Example

(http|ftp)://([^/\r\n]+)(/[^\r\n]*)?
Match "http://stackoverflow.com/"
     Group 1: "http"
     Group 2: "stackoverflow.com"
     Group 3: "/"

Match "http://stackoverflow.com/questions/tagged/regex"
     Group 1: "http"
     Group 2: "stackoverflow.com"
     Group 3: "/questions/tagged/regex"
(?:http|ftp)://([^/\r\n]+)(/[^\r\n]*)?
Match "http://stackoverflow.com/"
     Group 1: "stackoverflow.com"
     Group 2: "/"

Match "http://stackoverflow.com/questions/tagged/regex"
     Group 1: "stackoverflow.com"
     Group 2: "/questions/tagged/regex"