Regex: должен начинаться с буквы или цифры, но остальное может быть чем угодно - PullRequest
2 голосов
/ 15 февраля 2012

Я пытаюсь построить шаблон для использования при проверке.

Моя цель состоит в том, чтобы первым символом была буква или цифра, а остальные - что угодно.

i.ex:

  1. A'r4nd0m!
  2. 9! H3ll0.
  3. b1llin6s

Я думал о: [a-zA-Z0-9_/][.*]++

Каким было бы решение?

Спасибо!

Ответы [ 4 ]

6 голосов
/ 15 февраля 2012

Как я уже говорил, буква или цифра - [\pL\pN]. Поэтому строка, начинающаяся с одного из них, будет соответствовать шаблону

/^[\pL\pN]/
4 голосов
/ 15 февраля 2012

Если первое число является цифрой или буквой, у вас есть ^[A-Za-z0-9]. (^ соответствует началу строки.) Чтобы все остальное было чем-либо, достаточно простого .*, поэтому у вас есть ^[A-Za-z0-9].*.

2 голосов
/ 15 февраля 2012

Вы должны привязать свое регулярное выражение в начале строки, используя /^/. Класс вашего персонажа [a-zA-Z0-9_/] также соответствует подчеркиванию и косой черте: это то, что вы намереваетесь? Кроме того, [.*]++ соответствует одной или нескольким точкам или звездам, а конечный + избыточно дублирует квантификатор.

Поскольку остальная часть строки может быть «чем угодно», нет смысла сопоставлять ее, и

/^[A-Za-z0-9]/

будет хорошо.

2 голосов
/ 15 февраля 2012

Вы можете немного сократить свое регулярное выражение:

^[a-zA-Z0-9].*

Начинается с буквы / цифры, может быть любой длины или любых символов после.

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