title: regular expression containing unicode words
body: <p>I'd like to match all strings containing a certain word. like:</p>
  
  <pre><code>String regex = (?:\P{L}|\W|^)(ベスパ)(?:\b|$)
  </code></pre>
  
  <p>however, the Pattern class doesn't compile it: </p>
  
  <pre><code>java.util.regex.PatternSyntaxException: Unmatched closing ')' near index 39
  (?:\P{L}|\W|^)((?:ベス|ベス|ヘズ)(?:パ)|パ)|ハ)゚)(?:\b|$)
  </code></pre>
  
  <p>I already set unicode_case to compile param, not sure what's going wrong here</p>
  
  <pre><code>final Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE| Pattern.CANON_EQ);
  </code></pre>
  
  <p>Thanks for help! :)</p>