Lomoson
@Lomoson

Как поставить отрицание в preg_match()?

$reg = "/^999999/";
$phone = "999999sdfgdsgfsddagdf";
preg_match($preg, $str);

В данном случае preg_match() вернет true. Скажите, пожалуйста, как изменить выражение что-бы preg_match() возвращало true, если выражение начинается не из 999999.
if (!preg_match(...)) не подходит, нужно именно выражение.
Пробовал кучу комбинаций с !?(), но толку 0
  • Вопрос задан
  • 2647 просмотров
Решения вопроса 1
@beta3-z
<?php

$pattern = '/^(?!999999)/';

var_dump(preg_match($pattern, '99999zzx')); //1
var_dump(preg_match($pattern, '999999asdasdsd')); //0
var_dump(preg_match($pattern, '')); //1
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Lomoson
@Lomoson Автор вопроса
Типа так нужно было:

#^(?!(^999999$))#
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы