re.search()

# A Python program to demonstrate working of re.match().
import re

# Let's use a regular expression to match a date string
# in the form of Month name followed by day number
regex = r"([a-zA-Z]+) (\\d+)"

match = re.search(regex, "I was born on June 24 ")

if match != None:
    # We reach here when the expression "([a-zA-Z]+) (\\d+)"
    # matches the date string

    # This will print [14, 21], since it matches at index 14
    # and ends at 21
    print("Match at index %s, %s" % (match.start(), match.end()))

    # We use group() method to get all the matches and
    # captured groups. The groups contain the matched values
    # In particular:
    # match.group(0) always returns the fully matched string
    # match.group(1), match.group(2), ... return the capture
    # groups in order from left to right in the input string
    # match.group() is equivalent to match.group(0)

    # So this will print "June 24"
    print("Full match: %s" % (match.group(0)))

    # So this will print "June"
    print("Month: %s" % (match.group(1)))

    # So this will print "24"
    print("Day: %s" % (match.group(2)))

else:
    print("The regex pattern does not match.")

re.search(): This method returns None (if the pattern is not matched), or re.MatchObject that consist of information about part of string that is matched. This method stops after first suitability, so it will be most suitable to test regular expression than extracting the data.