Created
January 11, 2012 14:37
-
-
Save gvc/1594940 to your computer and use it in GitHub Desktop.
Weird RegExp
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Can anybody explain why this happens? | |
name = "John Doe" | |
name.gsub(/John/, "\\'") | |
# " Doe Doe" |
Oh, great. I'd have had no idea.
I never would say \' meant something special… #nicetoknow
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The same way one can do
name.gsub(/J(o)hn/, "\\1")
and haveJohn
replaced by the matcho
, you can also do"\\'"
and replace the match by the right side of the match in the string itself. This API is similar to Ruby's special variables$'
,$1
for regexps (i.e.$'
means the same as\\'
). You can check what Ruby's special variables do here: http://www.zenspider.com/Languages/Ruby/QuickRef.html