Python

Регулярни изрази в Python

Регулярни изрази в Python
В тази статия ще разгледаме накратко регулярните изрази в python. Ще работим върху вградени функции с примери, последвани от таблица, която обяснява какво означава всеки знак в регулярен израз за по-добро разбиране.

Какво е регулярен израз?

Преди да преминем към практически примери, трябва да знаем какво всъщност е регулярният израз. Регулярният израз е последователност от символи, която определя структурата на вход или модел за търсене. Представете си, че въвеждате имейл или парола на произволен уебсайт като Facebook, Twitter или Microsoft. Опитайте се да го поставите погрешно и като погрешно имам предвид, опитайте се да противите на тяхната конвенция. Той ясно ще посочи тези грешки вместо вас. Няма да имате право да преминете към следващата стъпка, докато въведеното от вас не съвпадне с модела, който те са задали в бекенда. Този специфичен модел, който ви ограничава да поставяте някакъв вид допълнителна или неподходяща информация, е известен като регулярно изражение или регулярен израз.

Регулярни изрази в Python

Регулярните изрази не играят различна роля в python, както в другите езици за програмиране. Python съдържа модула повторно което осигурява пълна поддръжка за използването на регулярни изрази. Всеки път, когато се въведе неподходяща или несъвместима информация или възникне някакъв вид грешка, това повторно модул ще го хване като изключение, което в крайна сметка помага за решаване на необходимите проблеми.

Модели на регулярни изрази

Има много налични символи, написани в последователност, която прави специфичен модел на регулярен израз. С изключение на контролните знаци, (+ ? . * ^ $ () [] | \), всички герои съвпадат. Контролните знаци обаче могат да бъдат избегнати, като се напише обратна наклонена черта.

Следва таблица, която се състои от шаблон и описание на работата им в python.

модел Описание
[Pp] ython Съвпадение „Python“ или „python“
Вана [Ee] Съвпадение „TubE“ или „Tube“
[aeiou] Съвпадайте с всяка гласна малка буква
[0-9] Съпоставете произволна цифра между 0 и 9
[a-z] Съвпадайте с всяка малка буква ASCII
[A-Z] Съвпадайте с всяка главна ASCII буква
[a-zA-Z0-9] Съвпадайте с малки и големи букви ASCII
или цифра между 0 и 9
[^ aeiou] Съвпадайте с всичко, но не и с главни малки букви
[^ 0-9] Съвпадайте с всичко, но не с цифра
. Съвпадение с всеки символ, с изключение на нов ред
Съвпадение с всяка цифра: [0-9]
Съвпадение с нецифрено: [^ 0-9]
Съчетайте бели пространства
Съчетайте небелите интервали
\ A Съвпадение в началото на низа
\ Z Край на низа на мача
\ w Съвпадение на символи от думи
\ W Съвпадение на неречни символи
[…] Съвпадение на всеки един знак в скоби
[^…] Съвпадайте с всеки един знак, който не е в скоби
$ Съвпадение на края на реда
^ Съвпадение с началото на реда

Функции за съвпадение и търсене в Python

Сега, тук ще видим два примера с двете вградени функции, които съществуват в python. Единият е съвпадение, а другият е функция за търсене. И двамата вземат едни и същи параметри, които са както следва:

Преди да преминем към примерна част тук е друго нещо, което трябва да знаете. Два метода могат да се използват за получаване на съвпадащи групи, които са както следва:

Това, което се случва, е, че когато се използват функции за съвпадение или търсене, той прави подгрупи на всички свързани модели, намерени в низове, и ги структурира на позиции, започващи от 0. Вижте примера по-долу, за да получите по-добра представа.

Функция за съвпадение (пример)

В следващия пример взехме списък, в който използвахме регулярен израз, който проверява думите, започващи с буква „а“ и ще избере само ако и двете думи започват с една и съща буква i.д.: "а".

внос re
arraylist = [„афект на привързаност“, „акт на привързаност“, „програмиране на привързаност“]
за елемент в arraylist:
k = re.съвпадение („(a \ w +) \ W (g \ w +)“, елемент)
ако k:
печат ((z.групи ()))

Изход:

(„привързаност“, „засягане“)
(„обич“, „акт“)

Третият елемент в списъка няма да се разглежда, тъй като не съответства на регулярното изражение, което казва, че и двете думи трябва да започват с „a“.

Функция за търсене (пример)

Тази функция се различава от съвпадението. Търсене сканира цялото изречение, докато съвпадението не. В следващия пример методът за търсене е успешен, но функцията за съвпадение не.

внос re
Вход = “DocumentationNew”
v = re.търсене („(ta.*)", Вход)
ако v:
печат („резултат:“ v.група (1))

Изход:

резултат: tationNew

'та.* 'означава всичко след' ta ', което ни дава резултата ни като' tationNew 'от търсения вход "DocumentationNew".

Заключение

Регулярните изрази са от решаващо значение за всички разработчици на софтуер и сега можете лесно да видите как да използвате регулярните изрази в езика за програмиране Python.

Урок за битка за Уеснот
Битката за Уеснот е една от най-популярните стратегически игри с отворен код, които можете да играете по това време. Тази игра не само се разработва о...
0 А.д. Урок
От многото стратегически игри, 0 A.д. успява да се открои като изчерпателно заглавие и много дълбока, тактическа игра, въпреки че е с отворен код. Раз...
Урок за Unity3D
Въведение в Unity 3D Unity 3D е мощен двигател за разработка на игри. Това е кръстосана платформа, която ви позволява да създавате игри за мобилни уст...