Убрать все символы, кроме латиницы, кириллицы и запятой - PHP

1,00
р.
подскажите регулярку, которая должна вырезать любые символы, кроме запятой (оставаться должны только кириллица и латинница). Сделал наброски , вроде работают , но запятую не знаю как оставить.
$key_words=mb_strtolower($key_words) $key_words=preg_replace("/[^a-zа-я\s]/iu","",$key_words)

Ответ
Если должны остаться только буквы (кириллица + латиница) и запятая, то код должен иметь вид:
preg_replace("/[^а-яёa-z,]/iu", '', $target)
UPD:
Стоит обратить внимание, что регулярное выражение выше соответствует только части кириллицы, а именно русскому алфавиту. Вообще, понятие кириллица существенно шире, и включает символы, используемые не только в современном русском алфавите, но и в ряде других славянских языков. Кириллические Unicode символы можно увидеть, например, здесь.
Тоже самое, касается и латиницы. Формально, помимо символов английского алфавита (/[a-z]/i), туда входит еще множество других символов, например, ñ из испанского алфавита. Регулярное выражение выше, соответствует только символам английского алфавита, а не всем символам латиницы.
UPD2:
Если же вы действительно хотите оставить в строке символы, которые формально входят в латиницу или кириллицу, то вы можете использовать следующий код:
preg_replace("/[^,\p{Cyrillic}\p{Latin}]/ui", '', $target)
Это регулярное выражение оставляет очень большой набор символов (например, кириллические символы ѥѧѭ). Не думаю, что его вообще стоит использовать, но для тех, кто формально относится к понятиям латиница и кириллица, оно может оказаться интересным.