title: Python Regex Matching - Splitting on punctuation but ignoring certain words
body: <p>Suppose I have the following sentence,</p>
  
  <blockquote>
    <p>Hi, my name is Dr. Who. I'm in love with fish-fingers and custard !!</p>
  </blockquote>
  
  <p>I'm trying to capture the punctuation (except the apostrophe and hyphen) using regular expressions, but I also want to ignore certain words. For example, I'm ignoring Dr., and so I don't want to capture the . in the word Dr. </p>
  
  <p>Ideally, the regex should capture the text in between the parentheses:</p>
  
  <blockquote>
    <p>Hi(, )my( )name( )is( )Dr.( )Who(. )I'm( )in( )love( )with( )fish-fingers( )and( )custard( !!)</p>
  </blockquote>
  
  <p>Note that I have a Python list that contains words like "Dr." that I want to ignore. I'm also using string.punctuation to get a list of punctuation characters to use in the regex. I've tried using negative lookahead but it was still catching the "." in Dr. Any help appreciated!</p>