Использование шаблона символов в регулярном выражении

Я новичок в регулярных выражениях,

Может ли кто-нибудь объяснить для меня закономерности:

[a-fA-F\d]{30}

[\d\w]

[-+_~.\d\w]

[-\d\w]{0,253} 

1 ответ

Решение

Прежде всего, несколько заметок:

  1. \d это сокращение, чтобы выразить любую цифру. [0-9] и класс персонажа [[:digit:]] аналогичны \d,

  2. \w является сокращением для всех буквенно-цифровых символов и _, [a-zA-Z0-9_] а также [[:alnum:]_] аналогичны \w,

Теперь шаблоны Regex:

  • [a-fA-F\d]{30} будет соответствовать любому из персонажей среди abcdefABCDEF0123456789 ровно 30 раз.

  • [\d\w] будет соответствовать любой отдельный символ между [0-9] а также [a-zA-Z0-9_], Обратите внимание, что \w содержит [0-9] так что тебе не нужно \d, Просто используйте \w,

  • [-+_~.\d\w] будет соответствовать любой отдельный символ между -+_~.[0-9][a-zA-Z0-9_], Обратите внимание, что \w уже содержит _ а также [0-9] так что вам не нужно явно упоминать _ а также \d, Это можно упростить как [-+~.\w]

  • [-\d\w]{0,253} будет соответствовать любому из символов между -, [0-9] а также [a-zA-Z0-9_] минимум от 0 до максимум 253 раз. Снова \d не нужно, вы можете использовать [-\w]{0,253}

Другие вопросы по тегам