Функции регулярных выражений, которые вам следует знать
Регулярные выражения (regex) очень полезны для извлечения шаблонов и информации из заданного фрагмента текста. Регулярное выражение используется для сопоставления с образцом в тексте, но, с другой стороны, оно игнорируется большинством программистов, поскольку им сложно изучить и понять.
Регулярные выражения могут использоваться для различных целей, таких как поиск закономерностей в тексте, проверка текста, веб-парсинг и многое другое.
Одна из лучших особенностей регулярных выражений заключается в том, что они не привязаны к какому-либо конкретному языку программирования. Правила и выражения регулярного выражения одинаковы для всех языков программирования.
В этой статье я придумал функции, используемые с регулярными выражениями для извлечения информации из заданного текста, с некоторыми примерами. Давайте начнем!
1. findall ()
Эта findall()
функция возвращает список строк, соответствующих шаблону. Этот метод просматривает входную строку слева направо, а затем возвращает все неперекрывающиеся результаты, соответствующие шаблону.
Этот метод принимает в качестве входных данных два аргумента pattern
и string
.
Синтаксис: re.findall (шаблон, строка)
import re text = "Hello 12, how are you? This is 13" pattern = "\d+" result = re.findall(pattern, text) print(result) Output: ['12', '13']
2. поиск ()
Этот search()
метод используется для поиска определенного шаблона в заданном тексте / строке. Этот метод возвращает объект match, если совпадающий шаблон обнаружен в тексте. В противном случае возвращается None
.
Этот метод принимает в качестве входных данных два аргумента, pattern
и string
. Этот метод останавливается после первого совпадения шаблона. Следовательно, это гораздо полезнее для тестирования регулярного выражения, чем для извлечения данных.
Синтаксис: re.search (шаблон, строка, флаги = 0)
import re text = "Python is a programming language" #cheking if 'Python' is present at the beginning match = re.search('\APython', text) if match: print("Pattern found") else: print("Pattern not found") Output: Pattern found
3. split ()
Эта функция split()
разбивает строку при совпадении с шаблоном и возвращает список строк, в которых шаблон разделил новую строку.
Эта функция принимает в качестве входных данных два параметра pattern
и string
. Первый параметр - это шаблон, обозначающий регулярное выражение. Всякий раз, когда образец обнаруживается в строке, он разбивает строку.
Синтаксис: re.split (шаблон, строка, maxsplit = 0)
import re text = "Hello 12, how are you? This is 13" pattern = "\d+" result = re.split(pattern, text) print(result) Output: ['Hello ', ', how are you? This is ', '']
4. sub ()
Эта функция sub()
используется для поиска шаблона в строке и последующей замены этого шаблона другим текстом. Эта функция принимает на вход три параметра pattern
, replace
, string
.
Параметр шаблона используется для поиска шаблонов в тексте, параметр replace - это текст, который мы хотим заменить на извлеченный шаблон, а строковый параметр - это текст, в котором мы хотим выполнить операции.
Функция возвращает строку после замены совпадающих вхождений содержимым параметра replace
.
Синтаксис: re.sub (шаблон, замена, строка)
import re text = "Namaste World! How are you doing?" #replacing whitespace characters with '!!' result = re.sub("\s", "!!", text) print(result) Output: Namaste!!World!!!How!!are!!you!!doing?
Здесь мы видим, что в выходной строке символы пробела были заменены на «!!».
5. subn ()
Этот subn()
метод почти аналогичен sub()
методу. Единственная разница заключается в выводе обоих методов.
Метод sub()
возвращает строку после замены совпадающего шаблона текстом параметра replace
, а метод subn()
возвращает кортеж, состоящий из измененной строки и количества замен в строке.
Синтаксис: re.subn (шаблон, замена, строка)
import re text = "Namaste world. I prefer to work at night" pattern = "wo" result = re.subn(pattern, "~", text) print(result) Output: ('Namaste ~rld. I prefer to ~rk at night', 2)
Здесь мы видим, что вывод представляет собой кортеж, состоящий из измененной строки и количества замен.
Заключение
Это все из этой статьи. В этой статье мы обсудили некоторые наиболее часто используемые функции регулярных выражений. Эти функции удобны для поиска шаблонов в тексте и проверки строки.
Регулярные выражения относятся не только к этим нескольким функциям, но, прочитав об этих функциях в этой статье, вы получите четкое представление о том, как работают регулярные выражения.
Спасибо за прочтение!
Вы можете подписаться на мою бесплатную информационную рассылку здесь: Информационный бюллетень Пралабха.