Строка, которая начинается И заканчивается символом, не должна совпадать.Regexp - Как проверить, начинается ли строка OR с заданным символом?
Это просто проще сделать что-то вроде:
$string = '!test';
preg_match('/^(!?)([a-z0-9]{1,10})(!?)$/i', $string, $matches);
и исследовать $ матчи?
Не могли бы вы подробнее рассказать о требованиях? '! test' начинается с'! 'и заканчивается на' t', поэтому он должен совпадать? Не являются ли 'substr ($ string, 0, 1)' и 'substr ($ string, -1)' достаточно? Не могли бы вы предоставить два примера ввода, 1 действительный и 1 неверный? –
@stribizhev Я также тестирую символы в середине, поэтому мне нужно регулярное выражение. В этом примере «заданный символ» - «!». Я хочу проверить, начинается ли строка OR или заканчивается символом '!'. – GrumpyHat
Пожалуйста, объясните, что вы хотите совместить в целом, включая материал между ними. В словах. – simbabque