PHP preg_replace заменить все www на http://www - PullRequest
0 голосов
/ 04 апреля 2019

Как я могу заменить все вхождения в предложении на http://www? Условие - если у соответствующего www уже есть префикс http: //, заменять не нужно.

Для лучшего понимания:

<a href="www.test.com">test</a> should be <a href="http://www.test.com">test</a>

<a href="http://www.test.com">test</a> also should be <a href="http://www.test.com">test</a>

1 Ответ

1 голос
/ 04 апреля 2019

Вы можете использовать этот положительный взгляд вперед (?=www), чтобы отметить точку перед www, и использовать этот отрицательный взгляд позади (?<!http:\/\/), чтобы отметить точку, которой не предшествует http://, и вставить http:// вэта точка.

(?<!http:\/\/)(?=www)

Демо

...