title: How to exclude expressions placed after specific sign in RegEx
body: <p>I have a question regarding RegEx - I try to use negative lookahead in order to exclude found expressions as of specific rule, but it seems like my knowledge of the syntax is not enough to get around the problem.</p>
  <p>I currently have a regex pattern: <code>([A-Z]{2}\d{4}|[A-Z]{1}\d{5,6}|\b(?!20\d\d\b)\d{4,6})</code> which among other things is supposed to filter out expressions with 4 to 6 digits (excl. the ones which might be dates for year - preceeding negative lookahead) (the last alternative in the provided expression).</p>
  <p>As it happens, for this regex I would also need to exclude numbers which are happening after hyphen (so basically I found out that for the data I'm working with, sometimes it happens that I have codes like X-1234 for which it finds <strong>1234</strong> but then I'm sure it's not a code I'm interested in (I know that those codes would be always separated by space or would be at the beginning of whole sentence, e.g. &quot;1234 xxxx yyy zzzz&quot; or &quot;xxxx 1234 yyyy&quot;.)</p>
  <p>Would you have any ideas how to incorporate this kind of condition in the provided RegEx in order to make it work? I assume it has to be next to the negative lookaround for 20\d\d, but I couldn't find a way to incorporate it so it doesn't disable the whole pattern.</p>
  <p>Would much appreciate any help or ideas!</p>