in reply to Split of text

I see you have different formats of data:
30.6.89 CH 2454/89-7<cr><o:p></o:p> 25.1.94ch209/94-6;8.12.94ch3714/94-1<o:p></o:p> 25.1.94 ch 209/94-6 ; 8.12.94 ch 3714/94-1<o:p></o:p> 4.10.99 PCT PCT/IB99/01618 ; 11.10.99 PCT PCT/IB99/01660<o:p></o:p> 20.5.97 USA (prov.) 60/047; 168<o:p></o:p> 20.5.97 ch(pct) pct ib97/00575<o:p></o:p> us 31.10.03 60/516; 548 ; PCT 31.10.03 PCT/IB03/04867 pct 19.03.03 pct/ib03/01079<o:p></o:p>
And I may have missed some others.

Are these indeed each different formats or are it typos perhaps? Some lines seem to have two records on one line? Or did you forget to add a newline between the records?

Is the whitespace a simple space (one or more) or are it perhaps tabs?

It would help us all if you could show us the desired result for each of the above lines.

CountZero

A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James

My blog: Imperial Deltronics