Ah, ok, so if I understand correctly your data is initially in this form, so there are multiple entries per “NUMBER” contained within the one cell?
I wouldn’t try to achieve it all with the regex node. Instead I’d go for reassembling the data into a format which regex can more easily assist with. Since I already had a regex to extract the date when the date was split across multiple rows… let’s first split the data across multiple rows 
To achieve that, the Cell Splitter, splitting the data on \n
but generating a List turns the data into this:
After a quick rename of the column to remove the “_SplitResultList” suffix, ungroup can be used to unpack the List column into individual rows per item, and a nice side-effect of this is that the “NUMBER” value gets filled down against each item
This then puts us on track to use the String Splitter (regex) to pull out only the date data (if present) into a new column. Missing Value can then fill down those dates across all the rows to which it applies
and finally a groupby, grouping on NUMBER plus the “DATE” column and concatenating with \n, followed by a tidy up of the table gets you to the result (I hope!
)
see attached workflow:
regex date split.knwf (91.7 KB)
edit: – Having just re-read I gather that after this, you then want your data in column form, so I’ve added a second workflow with a modification to the end processing. This does indeed use “lookahead” regex, as it tries to generate three columns across different rows that can then be “merged”
(?=\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}) \- (.*)|(.*)
So this looks ahead to see if the row contains the date and time, and if it does it captures the date/time, then skips the hyphen and captures the remaining text on that row. If it doesn’t contain date/time it just captures the whole entry into a third column
So you end up with this:
Tidying that up with a Missing Value, then a Row Filter and Table Manipulation results in this output:
regex date split -v2.knwf (101.5 KB)