Convert Regular Text Data into Excel Data
Below is part of the data in text file info.txt:
Abbrucharbeiten
ATR Armbruster
Werkstr. 28
78727 Oberndorf
Tel. 0175 7441784
Fax 07423 6280
Abbrucharbeiten
Jensen & Sohn, Karl
Schallenberg 6A
25587 Münsterdorf
Tel. 04821 82538
Fax 04821 83381
Abbrucharbeiten
Kiwitt, R.
Auf der Heide 54
48282 Emsdetten
Tel. 02572 88559
Tel. 0172 7624359
Abbrucharbeiten, Sand und Kies, Transporte, Kiesgruben, Erdbau
Josef Grabmeier GmbH
Reitgesing 1
85560 Ebersberg
Tel. 08092 24701-0
Fax 08092 24701-24
The file contains four pieces of contact information. The first four lines of each piece of information are department, company name, address and post code. Phone number or fax number, or both, begin from the fifth line. The task is to convert the text data into Excel by different types of information in the following format:
Branche: Name: Address: Place: contact1: contact2:
1st row 2nd row 3rd row 4th row 5th row 6th row.....
It’s convenient to complete the task using esProc.
You can download esProc installation package and free DSK edition license HERE.
1. Write script txt2csv.dfx in esProc:
A |
|
1 |
=file("info.txt").import@i() |
2 |
=A1.group@o(left(~,3)=="Tel" || left(~,3)=="Fax") |
3 |
=A2.step(2,2) |
4 |
=A2.step(2,1).((~|A3(#)).concat@cq()) |
5 |
=file("info.csv").export(A4) |
A1 Import data of info.txt.
A2 Divide each piece of contact information by phone number, fax number and other information.
A3 Get even-numbered rows in each group.
A4 Concatenate each pair of neighboring odd-numbered row and even-numbered row into one record. Use comma to separate records and join them into a string (odd-numbered rows contain other information and even-numbered rows contain phone number or/and fax number).
A5 Export the result to info.csv.
2. Execute the esProc script. Below is the result content in info.csv:
Abbrucharbeiten |
ATR Armbruster |
Werkstr. 28 |
78727 Oberndorf |
Tel. 0175 7441784 |
Fax 07423 6280 |
Abbrucharbeiten |
Jensen & Sohn, Karl |
Schallenberg 6A |
25587 MŸnsterdorf |
Tel. 04821 82538 |
Fax 04821 83381 |
Abbrucharbeiten |
Kiwitt, R. |
Auf der Heide 54 |
48282 Emsdetten |
Tel. 02572 88559 |
Tel. 0172 7624359 |
Abbrucharbeiten, Sand und Kies, Transporte, Kiesgruben, Erdbau |
Josef Grabmeier GmbH |
Reitgesing 1 |
85560 Ebersberg |
Tel. 08092 24701-0 |
Fax 08092 24701-24 |
SPL Official Website 👉 https://www.scudata.com
SPL Feedback and Help 👉 https://www.reddit.com/r/esProc_Desktop/
SPL Learning Material 👉 https://c.scudata.com
Discord 👉 https://discord.gg/cFTcUNs7
Youtube 👉 https://www.youtube.com/@esProcDesktop
Linkedin Group 👉 https://www.linkedin.com/groups/14419406/