title: Regex to find instances of a string pattern that is not preceded by a carriage return/line feed
body: <p>I'm working in Notepad++</p>
  <p>In the file that I'm working with there is a string pattern of <code>[0-9][0-9]-[0-9][0-9][0-9][0-9]|</code> that every line should start with, immediately followed by a pipe. (A caveat there: the pattern can have up to three capital letters following the four digits. E.g. 00-1324A| or 12-3456STR|).</p>
  <p>There are instances in the file where that pattern is in the middle of a line, and needs to be moved to the next line.</p>
  <p>Example:</p>
  <pre><code>00-1234REV|The quick brown fox jumped over the lazy dog|Test
  11-6544|FooBar|text99-8656ST|This needs to be on the next line|some text
  45-8737|Peter pipe picked a peck of pickled peppers|TEST2
  </code></pre>
  <p>As I noted within the example, <code>99-8656ST</code> needs to be moved to the next line, resulting in this:</p>
  <pre class="lang-js prettyprint-override"><code>00-1234REV|The quick brown fox jumped over the lazy dog|Test
  11-6544|FooBar|text
  99-8656ST|This needs to be on the next line|some text
  45-8737|Peter pipe picked a peck of pickled peppers|TEST2
  </code></pre>
  <p>I currently have this regex: <code>(?&lt;=[^\d\r\n])\d{2}-\d{4}(?!\d)</code> but that is matching on parts of social security numbers in the middle of a line:</p>
  <pre class="lang-js prettyprint-override"><code>123-45-6789
  </code></pre>
  <p>My regex will on <code>45-6789</code>.</p>