$re = '/^(.+)(\[ *)(\d+)(\] *)(.+ )(.+)$/m';
$str = 'DIN[ 1] ON DCS_SpeedSafe
DIN[ 201] ON *IMSTP
DIN[ 202] ON *HOLD
DIN[ 203] ON SFSPD
DIN[ 204] OFF CSTOPI
DIN[ 205] OFF FAULT RESET
DIN[ 206] OFF START
DIN[ 207] OFF HOME
DIN[ 208] ON ENBL
DIN[ 209] OFF RSR1
DIN[ 210] OFF RSR2
DIN[ 211] OFF RSR3
DIN[ 212] OFF RSR4
DIN[ 213] OFF RSR5
DIN[ 214] OFF RSR6
DIN[ 215] OFF RSR7
DIN[ 216] OFF RSR8
DIN[ 219] OFF SempreOff
DIN[ 220] OFF Abilita Ciclo
DIN[ 221] OFF Abilitazione generale
DIN[ 225] OFF CaricoOk
DIN[ 226] OFF CarFuoriIngombro
DIN[ 227] OFF TraslOK
DIN[ 228] OFF TraslFuoriIngombro
DIN[ 229] OFF PezPresNastroCarico
DIN[ 230] OFF FtControlloSagoma1
DIN[ 231] OFF FtControlloSagoma2
DIN[ 232] OFF TipSagoma1
DIN[ 233] OFF TipSagoma2
DIN[ 234] OFF TavRqDepo1
DIN[ 235] OFF TavRqScambio1
DIN[ 236] OFF TavRqPrel1
DIN[ 237] OFF TavPezScarto
DIN[ 238] OFF TavFuoriImgombro
DIN[ 239] OFF TavInclusa
DIN[ 240] OFF PrelievoNastroCarico
DIN[ 241] OFF PrelievoTavola
DIN[ 242] OFF ScartoCtrlUsura
DIN[ 243] OFF TavPezPres1
DIN[ 244] OFF TavPezPres2
DIN[ 245] OFF Ctrl Ft Enable
DIN[ 246] OFF TavRqDepo2
DIN[ 247] OFF TavRqScambio2
DIN[ 248] OFF TavRqPrel2
DIN[ 249] OFF NastroAbil
DIN[ 250] OFF Carico2Ok
DIN[ 251] OFF Car2FuoriIng
DIN[ 252] OFF PezPresNastro2
DIN[ 253] OFF Nastro2Abil
DIN[ 254] OFF PriorAltern/Nas2
DIN[ 255] OFF DemoOffsEsegui
DIN[ 256] OFF DemoOffsAddOffs
DIN[ 257] OFF EnbCtrlSmussi
DIN[ 258] OFF CtrlSmussiRisKo
DIN[ 259] OFF CtrlSmussiRisOk
DIN[ 260] OFF EnbCtrlColore
DIN[ 261] OFF CtrlColoreRisKo
DIN[ 262] OFF CtrlColoreRisOk
DIN[ 263] OFF CassScartoPres
DIN[ 265] OFF Prel1_StopRq
DIN[ 266] OFF Prel2_StopRq
DIN[ 267] OFF DepoTrasl_StopRq
DIN[ 268] OFF DepoTav1_StopRq
DIN[ 269] OFF DepoTav2_StopRq
DIN[ 270] OFF CtrlSmus_StopRq
DIN[ 273] OFF Magnet_A
DIN[ 274] OFF Smagnet_A
DIN[ 275] OFF Magnet_B
DIN[ 276] OFF Smagnet_B
DIN[ 277] OFF SoffioA
DIN[ 278] OFF SoffioB
DOUT[ 201] OFF CMDENBL
DOUT[ 202] ON SYSRDY
DOUT[ 203] OFF PROGRUN
DOUT[ 204] OFF PAUSED
DOUT[ 205] OFF HELD
DOUT[ 206] OFF FAULT
DOUT[ 207] ON ATPERCH
DOUT[ 208] OFF TPENBL
DOUT[ 209] OFF BATALM
DOUT[ 210] OFF BUSY
DOUT[ 211] OFF ACK1
DOUT[ 212] OFF ACK2
DOUT[ 213] OFF ACK3
DOUT[ 214] OFF ACK4
DOUT[ 215] OFF ACK5
DOUT[ 216] OFF ACK6
DOUT[ 217] OFF NumProgErr
DOUT[ 218] ON InHome
DOUT[ 219] OFF InManut
DOUT[ 220] OFF InRiscaldamento
DOUT[ 221] OFF InPulizPz
DOUT[ 222] OFF InCheckFt
DOUT[ 223] OFF SegnaliSimulati
DOUT[ 224] OFF Modo T1 Attivo
DOUT[ 233] OFF CicloRiposo(Tappa0)
DOUT[ 234] OFF PezPrelNastroCarico
DOUT[ 235] OFF CicloNastroCarico
DOUT[ 236] ON NastroCaricoFuoriIng
DOUT[ 237] OFF PezDepTrasl
DOUT[ 238] OFF CicloTrasl
DOUT[ 239] ON TraslFuoriIng
DOUT[ 240] OFF PezScarto
DOUT[ 241] OFF PzNoPrelNastroCarico
DOUT[ 242] OFF TavPezDep1
DOUT[ 243] OFF TavPezScambio1
DOUT[ 244] OFF TavPezPrel1
DOUT[ 245] ON TavFuoriIng
DOUT[ 246] OFF CicloTav
DOUT[ 247] OFF TavPezNoPrel1
DOUT[ 248] OFF TavPezNoPrel2
DOUT[ 249] OFF TavPezDep2
DOUT[ 250] OFF TavPezScambio2
DOUT[ 251] OFF TavPezPrel2
DOUT[ 252] OFF PezPrelNastro2
DOUT[ 253] OFF CicloNastro2
DOUT[ 254] OFF FuoriIngNastro2
DOUT[ 255] OFF PezNoPrelNas2
DOUT[ 256] OFF DemoOfsPosOk
DOUT[ 257] OFF PosCtrlSmussi
DOUT[ 258] OFF PosCtrlColore
DOUT[ 259] ON FuoriIngCtrlSmus
DOUT[ 260] ON FuoriIngProfil
DOUT[ 267] OFF MagneteAAttira
DOUT[ 268] OFF MagnateARilascia
DOUT[ 269] OFF MagneteBAttira
DOUT[ 270] OFF MagneteBRilascia
DOUT[ 273] OFF Prel1_Stop
DOUT[ 274] OFF Prel2_Stop
DOUT[ 275] OFF DepoTrasl_Stop
DOUT[ 276] OFF DepoTav1_Stop
DOUT[ 277] OFF DepoTav2_Stop
DOUT[ 278] OFF CtrlSmus_Stop
GIN[ 1] 0 NumProg
GIN[ 2] 0 VelCiclo
GIN[ 3] 0 CodPastiglia
GIN[ 4] 0 Offset X
GIN[ 5] 0 Offset Y
GIN[ 6] 0 Offset Z
GIN[ 7] 0 Offset rotaz X
GIN[ 8] 0 Offset rotaz Y
GIN[ 9] 0 Offset rotaz Z
GIN[ 15] 0 CmdMan
GOUT[ 1] 0 NumeroProgAttivo
GOUT[ 2] 0 ComandoEseguito
GOUT[ 3] 0 DemoOffsNumPos
UI[ 1] ON *IMSTP
UI[ 2] ON *Hold
UI[ 3] ON *SFSPD
UI[ 4] OFF Cycle stop
UI[ 5] OFF Fault reset
UI[ 6] OFF Start
UI[ 7] OFF Home
UI[ 8] ON Enable
UI[ 9] OFF Rsr0001
UI[ 10] OFF RSR2/PNS2/STYLE2
UI[ 11] OFF RSR3/PNS3/STYLE3
UI[ 12] OFF RSR4/PNS4/STYLE4
UI[ 13] OFF RSR5/PNS5/STYLE5
UI[ 14] OFF RSR6/PNS6/STYLE6
UI[ 15] OFF RSR7/PNS7/STYLE7
UI[ 16] OFF RSR8/PNS8/STYLE8
UO[ 1] OFF Cmd enabled
UO[ 2] ON System ready
UO[ 3] OFF Prg running
UO[ 4] OFF Prg paused
UO[ 5] OFF Motion held
UO[ 6] OFF Fault
UO[ 7] ON At perch
UO[ 8] OFF TP enabled
UO[ 9] OFF Batt alarm
UO[ 10] OFF Busy
UO[ 11] OFF ACK1/SNO1
UO[ 12] OFF ACK2/SNO2
UO[ 13] OFF ACK3/SNO3
UO[ 14] OFF ACK4/SNO4
UO[ 15] OFF ACK5/SNO5
UO[ 16] OFF ACK6/SNO6
SI[ 1] OFF Fault reset
SI[ 2] ON Remote
SI[ 3] ON Hold
SI[ 4] OFF User PB#1
SI[ 5] OFF User PB#2
SI[ 6] OFF Cycle start
SI[ 8] ON CE/CR Select b0
SI[ 9] ON CE/CR Select b1
SO[ 1] OFF Cycle start
SO[ 2] OFF Hold
SO[ 3] OFF Fault LED
SO[ 4] OFF Batt alarm
SO[ 5] OFF User LED#1
SO[ 6] OFF User LED#2
SO[ 7] OFF TP enabled
RO[ 1] OFF SoffioA
RO[ 2] OFF SoffioB
FLG[ 1] OFF DCS_SpeedSafeMem
FLG[ 2] OFF Simula
FLG[ 3] OFF RemoteOverDsb
';
$subst = "\1 \t \3 \t \6";
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is ".$result;
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php