Я пытаюсь разрешить пользователям регистрировать имя пользователя, содержащее только буквы алфавита (любого языка), цифры или дефисы в нем. Я пытаюсь проверить, нарушает ли это имя пользовательское правило.Регулярное выражение соответствует любому, кроме буквенно-цифрового символа или дефиса
До сих пор это работает, чтобы узнать, если имя пользователя делает не содержать только буквенно-цифровые символы:
REFindNoCase('^[[:alnum:]]', ARGUMENTS.Username)
Что хорошо, потому что если я вернусь найденный результат, то я знаю его недопустимый формат имя пользователя со специальными символами. Но я также хочу разрешить дефис. Как я мог выразить в регулярном выражении как (псевдо-код следующим образом):
REFindNoCase('^[[:alnum:]\-]', ARGUMENTS.Username)
я могу использовать только Perl совместимого Regex, потому что я использую ColdFusion, использующие этот стандарт в основном.
PCRE не Perl. Исправлены теги. – ikegami
@ikegami ColdFusion поддерживает регулярные выражения, совместимые только с Perl –
Это невозможно. Вероятно, он использует движок Perl Compatible Regular Expressions (PCRE), который отличается от Perl. – ikegami