Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialAnnie Scott
27,613 Pointsneed, help, what am i doing wrong
Help needed
import re
string = '''Love, Kenneth, kenneth+challenge@teamtreehouse.com, 555-555-5555, @kennethlove
Chalkley, Andrew, andrew@teamtreehouse.co.uk, 555-555-5556, @chalkers
McFarland, Dave, dave.mcfarland@teamtreehouse.com, 555-555-5557, @davemcfarland
Kesten, Joy, joy@teamtreehouse.com, 555-555-5558, @joykesten'''
contacts = re.search(r''' #<-- Wrap in multiline quote. Remove leading caret (^)
(?P<email>[-\w\d.+]+@[-\w\d.]+)
,\s
(?P<phone>\d{3}-\d{3}-\d{4})''' #<-- Add closing paren. Remove extra backslashes. Remove trailing $
, string, re.X | re.M)
twitters = re.search(r'''
(?P<twitter>@[\w\d]+)?$
''', string, re.X | re.M)
2 Answers
Dan Johnson
40,533 PointsThe ? means optional, as in zero or one of something. Since you have that outside the twitter group it makes that entire group optional. Get rid of it and you should get rid of the extra capture.
Annie Scott
27,613 PointsTASk 1 & 2 with the help from Dan johson
contacts = re.search(r''' #<-- Wrap in multiline quote. Remove leading caret (^) (?P<email>[-\w\d.+]+@[-\w\d.]+) ,\s (?P<phone>\d{3}-\d{3}-\d{4})''' #<-- Add closing paren. Remove extra backslashes. Remove trailing $ , string, re.X | re.M)
twitters = re.search(r''' (?P<twitter>@[\w\d]+)$ ''', string, re.X | re.M)
Annie Scott
27,613 PointsAnnie Scott
27,613 Pointsjust by taking that out it passed, after 3 hours of trying you helped, thank you