如何在 PHP 中移除字符串中所有非字母数字字符?
```html
Всем привет! Я новичок в PHP и столкнулся с такой проблемой: нужно очистить строку от всего, кроме букв (латиница и кириллица) и цифр. Пробовал через str_replace — получилось ужасно громоздко, пришлось перечислять каждый символ. Вот что я пытался сделать:
```php
$text = "Привет, мир! Как дела? 123.";
$clean = str_replace(array(',', '!', '?', '.', ' '), '', $text);
echo $clean; // ПриветмирКакдела123
```
Но это же несерьёзно — перечислять все возможные знаки препинания, пробелы и прочий мусор вручную. А если там будут скобки, слэши или спецсимволы вроде @#$%? К тому же, пользователь может ввести что угодно.
Я слышал, что можно использовать регулярные выражения с preg_replace, но не понимаю, какой шаблон задать. Нужно, чтобы остались только:
- Буквы латинского алфавита (a-z, A-Z)
- Буквы кириллицы (а-я, А-Я)
- Цифры (0-9)
Всё остальное (пробелы, знаки препинания, спецсимволы, эмодзи) должно быть удалено. Подскажите, как правильно это сделать? Желательно с объяснением,
```