|
|
|
@ -61,7 +61,9 @@ inline const QRegularExpression url_regex( |
|
|
|
|
general_unicode + ")*))"; |
|
|
|
|
const auto query = R"(((?:[a-zA-Z0-9\-._~!$&'*+,;=:@/?\\{}]|)" + pct_enc + |
|
|
|
|
R"(|\((?-1)\)|\[(?-1)\]|)" + general_unicode + ")*)"; |
|
|
|
|
const auto &fragment = query; |
|
|
|
|
// explicitly allow # in fragments because of matrix.to urls generated by some clients...
|
|
|
|
|
const auto fragment = R"(((?:[a-zA-Z0-9\-._~!$&'*+,;=:@/?\\{}#]|)" + pct_enc + |
|
|
|
|
R"(|\((?-1)\)|\[(?-1)\]|)" + general_unicode + ")*)"; |
|
|
|
|
return R"((?<!["'\w])(?>()" + protocol + "://" + "(?:" + userinfo + "@)?" + host +
|
|
|
|
|
"(?::[0-9]+)?" + path + |
|
|
|
|
"?" |
|
|
|
|