Попробуйте этот шаблон
$regex = "/^[A-Za-z0-9...]+$/";
Где вы должны заменить 3 точки ...
между 9
и ]
разрешенными специальными символами.
Пример:
// Adding comma (,) only
$regex = "/^[A-Za-z0-9,]+$/";
// Adding comma (,) and period (.)
$regex = "/^[A-Za-z0-9,.]+$/";
// comma and plus sign (+) note that plus/minus signs need to be escaped \+\-
$regex = "/^[A-Za-z0-9,\+\]+$/";
Полная строка, как вы и просили, будет:
// comma, period, plus sign, dash, exclamation mark, colon, semi colon, parentheses, space is (\s)
$regex = "/^[A-Za-z0-9,.\+\-!:;()\s]+$/";
Если символ подчеркивания (_)
разрешен, вы можете использовать [\w...]
вместо [A-Za-z0-9...]
Вы можете проверить это здесь