Avatar ·

如何在 PHP 中移除字符串中所有非字母数字字符?

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