title: What does \b really mean in Ruby regular expressions?
body: <p>I have a file with phrases such as "Canyon St / 27th Way" that I am trying to turn into "Canyon St and 27th Way" with Ruby regular expressions.  </p>
  
  <p>I used <code>file = file.gsub(/(\b) \/ (\b)/, "#{$1} and #{$2}")</code> to make the match, but I am a little stumped about what \b really means and why $1 contains all of the characters before the word boundary that precedes the slash and why $2 contains all of the characters after the word boundary starting the next word.</p>
  
  <p>Usually, I expect that whatever is in parentheses in a regular expression would be in $1 and $2, but I am not sure what parentheses around a word boundary would really mean because there really is nothing between the transition from a word character to a white space character.</p>