 <p>How about something like this?</p> <pre><code>string result = Regex.Replace(searchText, "(?s)^(\\d+/\\d+/\\d+ \\d+:\\d+:\\d+ [APM]{2}) (\\d+) (.*)$", ""); </code></pre> <p>This regex returns the date and time in the first group, the ID in the second and everything else (the message) in the last. </p> <p>The standard form of the above regex is</p> <pre><code>^(\d+/\d+/\d+ \d+:\d+:\d+ [APM]{2}) (\d+) (.*)$ </code></pre>