Слово соответствия не начинается с

Regex я попытался:

:\/

Это соответствует, но если слово начинается с http:// или https:// оно тоже соответствует.

Моя строка:

:/ ewqeqw eqweqwe qwe http:// ewr ewr erwer ewr:) :/ dasd ewwqeqwe https:// ddfds :/

Я хочу совместить :/ characters, кроме внутри http:// и https:// string.

2 ответа

Ваше регулярное выражение будет,

(?:http:\/|https:\/)(*SKIP)(*F)|:\/

DEMO

IT не будет соответствовать :/ symbol присутствует внутри строк http:/ или https:/

ИЛИ

(?<!--\b):\/
</code-->
<p> <a href="http://regex101.com/r/gF5vY6/4" rel="nofollow noreferrer" target="_blank">DEMO</a></p>


Вам может понадобиться что-то вроде:

~(?<!--\S) :/ (?!\S)~x
</code-->
<p> Это будет соответствовать только в том случае, если вокруг смайлика есть пробелы (или начало/конец строки).</p>

licensed under cc by-sa 3.0 with attribution.