В предыдущей post я просил о помощи на переписывание регулярного выражения без отрицанияНаписать регулярное выражение без отрицаний
Начиная регулярное выражение:
https?:\/\/(?:.(?!https?:\/\/))+$
Законченных с:
https?:[^:]*$
Этом отлично работает, но я заметил, что в случае, если у меня будет :
в моем URL, кроме :
из http \ s, он не будет выбран.
Вот строка, которая не работает:
sometextsometexhttp://websites.com/path/subpath/#query1sometexthttp://websites.com/path/subpath/:query2
Вы можете заметить :query2
Как я могу изменить второе регулярное выражение, перечисленные здесь, так что она будет выбирать URLs, которые содержат :
.
Ожидаемый результат:
http://websites.com/path/subpath/cc:query2
Кроме того, я хотел бы, чтобы выбрать все до первого из ?=param
вхождение
Вход: sometextsometexhttp://websites.com/path/subpath/#query1sometexthttp://websites.com/path/subpath/cc:query2/text/?=param
Выход:
http://websites.com/path/subpath/cc:query2/text/
Чувак! Вы просто! –
Если совпадение совпадений не требуется и нет поддержки поиска, всегда есть способ получить требуемую подстроку с функцией регулярного выражения захвата. –