Skip to content
Related Articles

Related Articles

Python | Check for URL in a String

Improve Article
Save Article
  • Difficulty Level : Medium
  • Last Updated : 29 Dec, 2020
Improve Article
Save Article

Prerequisite : Pattern matching with Regular Expression

In this article, we will need to accept a string and we need to check if the string contains any URL in it. If the URL is present in the string, we will say URL’s been found or not and print the respective URL present in the string. We will use the concept of Regular Expression of Python to solve the problem.


Input : string = 'My Profile: 
in the portal of'

Output : URLs :  ['',

Input : string = 'I am a blogger at'
Output : URL :  ['']

To find the URLs in a given string we have used the findall() function from the regular expression module of Python. This return all non-overlapping matches of pattern in string, as a list of strings. The string is scanned left-to-right, and matches are returned in the order found.

# Python code to find the URL from an input string
# Using the regular expression
import re
def Find(string):
    # findall() has been used 
    # with valid conditions for urls in string
    regex = r"(?i)\b((?:https?://|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'\".,<>?«»“”‘’]))"
    url = re.findall(regex,string)      
    return [x[0] for x in url]
# Driver Code
print("Urls: ", Find(string))


Urls:  ['',
My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!