Могу ли я перечислить все символы, не соответствующие регулярному выражению? - PullRequest
0 голосов
/ 29 мая 2018

У меня есть регулярное выражение, в которое включены различные диапазоны, например a-f и &-9.Есть ли способ перечислить все символы, включенные в этот диапазон, или, наоборот, символы, которые не включены?Я хотел бы написать спецификацию для каждого символа, разрешенного моим регулярным выражением.

1 Ответ

0 голосов
/ 29 мая 2018

Что-то вроде этого:

(0..0x02FFFF).each do |codepoint|
  begin
    character = codepoint.chr(Encoding::UTF_8)
    # .... Test your regexp here
  rescue RangeError
    # Ignore gaps in codepoint
  end
end

Как сказал @Stefan в своем комментарии: Вы будете тестировать довольно большое количество символов с этим ....

Исправлена ​​ошибка, спасибо Стефану

ИСПРАВЛЕНО: Работа с пробелами в диапазоне кодовых точек Unicode.Обратите внимание, что в моем решении я опустил плоскости Unicode 3-16.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...