I've already read this here and I still have got some questions. I will be very grateful if you can help me to solve them. I'm trying to compose a RegEx to verify that a string contains only letters, numbers, underscores and hyphens. Firstly, when I tried to do it (without Google-search) I did this @"[A-Za-z0-9_-]". After I made some research I found that it should be @"^[a-zA-Z0-9_-]$" where: 
^ asserts position at start of a line 
$ asserts position at the end of a line
My question is why we should insert these symbols? And my other question is why the string "jeffbutt" (with yellow in the screenshot) doesn't match?
 And my other question is why the string "jeffbutt" (with yellow in the screenshot) doesn't match?
