PowerShell первый индекс буквы в строке - PullRequest
0 голосов
/ 16 января 2020

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

например,

'3434 34 ^% 43 346 & * ^ & 8 645 Материал' становится 'Материал'

'345 $ 65556 & 5 $ & 9MoreStuff' становится 'MoreStuff'

'34 * ^ $ 76 $ :: ^ 5 {] [] [65A EvenMoreStuff 123! Но это начинается с буквы "становится" и даже больше 123! Но ItBeganWithA Letter '

Использование PowerShell 5.1

Спасибо за помощь!

1 Ответ

3 голосов
/ 16 января 2020

Вы можете использовать следующее регулярное выражение для удаления любых начальных не буквенных символов:

'3434 34^%43 346&*^& 8 645 Stuff' -replace '^[^\p{L}]*'

Шаблон описывает:

^          # start of string
[^\p{L}]*  # 0 or more characters that are not letters (\p{L} == unicode category "letters")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...