title: Java String Split On Non-Alphabetic Characters
body: <p>I want to split a String into a String array along non-alphabetic characters.  For example:</p>
  
  <pre><code>"Here is an ex@mple" =&gt; "Here", "is", "an" "ex", "mple"
  </code></pre>
  
  <p>I tried using the <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#split%28java.lang.String%29" rel="noreferrer">String.split(String regex)</a> method with the regular expression <code>"(?![\\p{Alpha}])"</code>. However this splits the string into</p>
  
  <pre><code>"Here", "_is", "_an", "_ex", "@ample"
  </code></pre>
  
  <p>(those underscores are to emphasize there is a space). I guess this is because the <code>?!</code> regex operator is "zero-width" and is actually splitting on and removing a zero-width character preceding the non-alphabetic characters in the input string.</p>
  
  <p>How can I accomplish removal of the actual non-alpha characters while I split the string? Is there a NON-zero-width negation operator?</p>