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 haveJohnreplaced 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$',$1for 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