Предпочитаемый текст для поиска: pqr
.Как можно найти какой-либо текст, который не является частью URL-адреса?
"http://abc.zzz/pqr/xyz" -> Should not match
"/pqr/" -> Should Match
"pqr" -> Should Match
"http://abc.zzz/pqr/pqr/" -> Should not match
"http://abc.zzz/pqr/pqr/ pqr" -> Should match the last "pqr"
"www.pqr.zzz" -> Should not match
Я попытался с помощью следующего регулярного выражения,
((?:(?:(?:https?|ftp|file|mailto):)|www)[^ ]+?)?(pqr)
Я тогда искал group 1
, если он пуст, то я рассматриваю это как спичку. Но это не удается для http://abc.zzz/pqr/pqr/
Любая помощь здесь в обнаружении соответствия текста не является частью URL-адреса?
Худший случай, я думаю, сначала определить все URL-адреса, а затем сохранить начальные и конечные индексы согласованных URL-адресов. Затем попробуйте сопоставить pqr
и исключить все те, которые являются частью URL. Я думал, есть ли что-то, что можно сделать лучше.
Что вам нужно для соответствия 'pqr'? Заменить что-нибудь? Лучший способ - сопоставить URL-адрес, а затем 'pqr' (в группе чередования). –
В моем случае 'pqr' сам является регулярным выражением, которое не всегда может быть частью URL-адреса. – pratZ
Худший случай, я думаю, сначала определить все URL-адреса, а затем сохранить начальные и конечные индексы согласованных URL-адресов. Затем попробуйте сопоставить 'pqr' и исключить все те, которые являются частью URL. – pratZ