Используя регулярное выражение в Perl, как мне найти первое вхождение любой буквы? - PullRequest
3 голосов
/ 08 мая 2011

я в тупике; Пока я пробовал несколько вещей, но то, что я пытаюсь извлечь, это первая буква в строке Perl.

у меня например:

10emV

Я хочу использовать регулярное выражение для извлечения первой буквы, которая в этом случае будет e.

Ответы [ 3 ]

6 голосов
/ 08 мая 2011

Вы можете просто искать \p{L} или [a-zA-z] для букв ASCII. Первый матч - это первая буква.

Если вы хотите сопоставить начало строки (по какой-то причине), вы также можете использовать \A\P{L}*\p{L} или \A[^a-zA-z]*[a-zA-z].

См. Также: Учебник по регулярным выражениям Perl - Подробнее о символах, строках и классах символов

0 голосов
/ 08 мая 2011
my $let = $1 if '10emV' =~ m/([a-z]+?)/g;
print $let;
0 голосов
/ 08 мая 2011
if ( $string =~ m/([[:alpha:]])/ ) {
    print $1, $/;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...