Domanda sull'analisi delle stringheCara Comunità,
Ricevo dati con informazioni identificative in 1 cella.
Names Default to Here(1);
dt = New Table("Sample",
add rows(2),
New Column( "Field_9630", Character, "Nominal" )
);
dt:Field_9630 << Set Values({"Customer: Mr A LoyalProduct: Cabinet HardwareRegion: Suburban New Dev", "Customer: Jenifer B Ashley LeighProduct: LumberRegion: Suburban Existing"});L'obiettivo è produrre tre colonne: Cliente, Prodotto, Regione
dt2 = New Table( "Sample 2",
Add Rows( 2 ),
New Column( "Field_9630",
Character,
"Nominal",
Set Selected,
Set Values(
{"Customer: Mr A LoyalProduct: Cabinet HardwareRegion: Suburban New Dev",
"Customer: Jenifer B Ashley LeighProduct: LumberRegion: Suburban Existing"
}
),
Set Display Width( 132 )
),
New Column( "Customer",
Character,
"Nominal",
Set Values( {"Mr A Loyal", "Jenifer B Ashley Leigh"} )
),
New Column( "Product",
Character,
"Nominal",
Set Values( {"Cabinet Hardware", "Lumber"} )
),
New Column( "Region",
Character,
"Nominal",
Set Values( {"Suburban New Dev", "Suburban Existing"} )
)
);Molte grazie in anticipo!
Cordiali saluti,
MG
Automazione e scriptingCombinazione e pulizia dei datiRe: Domanda sull'analisi delle stringheCIAO,
È sempre difficile analizzare le stringhe quando non si hanno delimitatori chiari.
Supponendo che la stringa di input conterrà sempre le parole chiave "Cliente:", "Prodotto:" e "Regione:", puoi utilizzare l'approccio seguente:
- Sostituisci le parole chiave con "," utilizzando la funzione SUBSTITUTE()
- Analizzare le informazioni rilevanti utilizzando la funzione WORD()
- Pulisci le stringhe risultanti con la funzione TRIM().
New Table( "Sample_PARSED",
Add Rows( 2 ),
New Column( "Field_9630",
Character,
"Nominal",
Set Values(
{"Customer: Mr A LoyalProduct: Cabinet HardwareRegion: Suburban New Dev",
"Customer: Jenifer B Ashley LeighProduct: LumberRegion: Suburban Existing"
}
),
Set Display Width( 726 )
),
New Column( "TEMP",
Character,
"Nominal",
Formula(
Substitute( :Field_9630,
"Customer:", ",",
"Product:", ",",
"Region:", ","
)
)
),
New Column( "Column 2",
Character,
"Nominal",
Formula( Trim( Word( 1, :TEMP, "," ) ) ),
Set Display Width( 157 )
),
New Column( "Column 3",
Character,
"Nominal",
Formula( Trim( Word( 2, :TEMP, "," ) ) )
),
New Column( "Column 4",
Character,
"Nominal",
Formula( Trim( Word( 3, :TEMP, "," ) ) ),
Set Display Width( 200 )
)
)
Spero possa essere d'aiuto.
Migliore,
TS
Re: Domanda sull'analisi delle stringhe@Thierry_S Grazie per la rapida risposta e la soluzione. Molto apprezzato!