Пустая строка или один символ в диапазоне az будут:
/^[a-z]?$/
Помните, что ?
означает «0 или 1 из этого» - поэтому регулярное выражение переводится в «0 или 1 символ междуa и z включительно ".
Переписав его, чтобы использовать |
для" или "(обратите внимание, насколько он уродлив, так что это просто академическое упражнение на данный момент), который вы могли бы сделать:
# nothing, or one character in a-z
/^(?:|[a-z])$/