Я разрабатываю приложение на python для извлечения нескольких типов данных из текста произвольной формы. Этот текст может включать в себя: адреса электронной почты, URL-адреса и пути к файлам.
У меня такой вопрос: как я могу извлечь пути к файлам (как в Linux, так и в Windows) с помощью регулярных выражений, исключая URL-адреса (которые обычно похожи на пути к файлам).
Я использовал различные выражения регулярных выражений, чтобы попытаться извлечь из текста пути Linux и Windows, а также пути к файлам. Тем не менее, эти выражения также подобрать URL-адреса. Я бы хотел, чтобы это не произошло.
В настоящее время я использую следующие регулярные выражения для электронных писем и URL-адресов.
Электронная почта:
([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\\.[a-zA-Z0-9_-]+)
URL-адрес:
(http|ftp|https)://([\\w_-]+(?:(?:\\.[\\w_-]+)+))([\\w.,@?^=%&:/~+#-]*[\\w@?^=%&/~+#-])?
Желаемое конечное поведение этого приложения - хранить действительные адреса электронной почты, URL-адреса и пути к файлам в структуре данных.
Вот пример текста:
Это пример текста, который будет содержать адреса электронной почты:
example@example.com, веб-сайты, такие как: http://www.example.com, и
пути к файлам, такие как: /Users/example/Documents/example.text и
C: \ Windows \ System32 \ Мне нужно вытащить только пути к файлам
формат Unix и Windows.