Белый список регулярных выражений с ограничением символов
Я пытаюсь добавить условие ограничения символов в этот подход регулярного выражения белого списка
str = str.replace(/[^A-Za-z-_0-9 ]/g, "");
Возможно ли это и как мне это сделать?
2 ответа
Решение
str = str.replace(/[^A-Za-z-_0-9\s]/g, "").substring(0,10); //At most 10 chars
Используйте квантификатор, чтобы указать предел.
Если вы хотите максимум (например, 10), сделайте следующее:
str = str.replace(/[^A-Za-z-_0-9 ]{,10}/g, "");
Минимум:
str = str.replace(/[^A-Za-z-_0-9 ]{10,}/g, "");
Диапазон:
str = str.replace(/[^A-Za-z-_0-9 ]{8,10}/g, "");
Точное количество:
str = str.replace(/[^A-Za-z-_0-9 ]{10}/g, "");