G
genxtech
I am trying to learn regular expressions in python3 and have an issue
with one of the examples I'm working with.
The code is:
#! /usr/bin/env python3
import re
search_string = "[^aeiou]y$"
print()
in_string = 'vacancy'
if re.search(search_string, in_string) != None:
print(" ay, ey, iy, oy and uy are not at the end of
{0}.".format(in_string))
else:
print(" ay, ey, iy, oy or uy were found at the end of
{0}.".format(in_string))
print()
in_string = 'boy'
if re.search(search_string, in_string) != None:
print(" ay, ey, iy, oy and uy are not at the end of
{0}.".format(in_string))
else:
print(" ay, ey, iy, oy or uy were found at the end of
{0}.".format(in_string))
print()
in_string = 'day'
if re.search(search_string, in_string) != None:
print(" ay, ey, iy, oy and uy are not at the end of
{0}.".format(in_string))
else:
print(" ay, ey, iy, oy or uy were found at the end of
{0}.".format(in_string))
print()
in_string = 'pita'
if re.search(search_string, in_string) != None:
print(" ay, ey, iy, oy and uy are not at the end of
{0}.".format(in_string))
else:
print(" ay, ey, iy, oy or uy were found at the end of
{0}.".format(in_string))
print()
The output that I am getting is:
ay, ey, iy, oy and uy are not at the end of vacancy.
ay, ey, iy, oy or uy were found at the end of boy.
ay, ey, iy, oy or uy were found at the end of day.
ay, ey, iy, oy or uy were found at the end of pita.
The last line of the output is the opposite of what I expected to see,
and I'm having trouble figuring out what the issue is. Any help would
be greatly appreciated.
with one of the examples I'm working with.
The code is:
#! /usr/bin/env python3
import re
search_string = "[^aeiou]y$"
print()
in_string = 'vacancy'
if re.search(search_string, in_string) != None:
print(" ay, ey, iy, oy and uy are not at the end of
{0}.".format(in_string))
else:
print(" ay, ey, iy, oy or uy were found at the end of
{0}.".format(in_string))
print()
in_string = 'boy'
if re.search(search_string, in_string) != None:
print(" ay, ey, iy, oy and uy are not at the end of
{0}.".format(in_string))
else:
print(" ay, ey, iy, oy or uy were found at the end of
{0}.".format(in_string))
print()
in_string = 'day'
if re.search(search_string, in_string) != None:
print(" ay, ey, iy, oy and uy are not at the end of
{0}.".format(in_string))
else:
print(" ay, ey, iy, oy or uy were found at the end of
{0}.".format(in_string))
print()
in_string = 'pita'
if re.search(search_string, in_string) != None:
print(" ay, ey, iy, oy and uy are not at the end of
{0}.".format(in_string))
else:
print(" ay, ey, iy, oy or uy were found at the end of
{0}.".format(in_string))
print()
The output that I am getting is:
ay, ey, iy, oy and uy are not at the end of vacancy.
ay, ey, iy, oy or uy were found at the end of boy.
ay, ey, iy, oy or uy were found at the end of day.
ay, ey, iy, oy or uy were found at the end of pita.
The last line of the output is the opposite of what I expected to see,
and I'm having trouble figuring out what the issue is. Any help would
be greatly appreciated.