найти первое вхождение не буквенно-цифрового символа в строке

Я знаю, что я мог бы использовать strpos найти первое вхождение строки. Но возможно ли найти первое вхождение символа, который не является буквенным символом или числом.

Например:

strpos2('hello world') => 5

strpos2('hi!you') => 2

2

Решение

Попробуй с preg_match

$string = "hi!you";
preg_match('/[\W]+/', $string, $match, PREG_OFFSET_CAPTURE);
print_r($match);

Здесь $ match вернет позицию первого соответствующего не алфавитного символа

2

Другие решения

Других решений пока нет …