[^a]
означает любой символ, отличный от a
, мы знаем, но что означает [^]
(без следующих символов)? Точно так же, как -
теряет смысл символьного диапазона в таких случаях, как [-]
, я предположил, что [^]
будет соответствовать карете. Я слишком долго отлаживал эту проблему, только чтобы узнать, что, по крайней мере, в Chrome 19, похоже, что-то похожее, другими словами, эквивалентно .
. Существует ли спецификация, применимая здесь или каково ожидаемое поведение?
Да, я знаю, что могу и, вероятно, должен использовать [\^]
. Этот вопрос больше связан с характером болезненного любопытства.