Estrai il codice parte guasto da una stringa non strutturataCIAO,
Voglio estrarre i codici delle parti di errore dalla stringa non strutturata di seguito utilizzando Regex in JSL. Ma non sono riuscito a ottenerlo perché è complicato.
Riparare T126 e PA21. ripetere il test superato
modificare L6C, reindirizzare FTNG4 per ripetere il test
Test 1 guasto parte P12; M531, Z6A2. Test 2 guasto parte Z100, RT98; BTGH9. Rielaborare tutte le parti
parti difettose sostituite (K3; LG69; AK4T). Procedi al test successivo
parte danneggiata YT10 rielaborare la parte, procedere al processo successivo
Il risultato richiesto nella colonna "Codice parte guasto" dovrebbe assomigliare a questo

Qualsiasi consiglio e aiuto sarebbe molto apprezzato.
Grazie
Automazione e scriptingRi: Estrarre il codice della parte di errore da una stringa non strutturataCatturare più cose con una singola espressione regolare non è così semplice in JMP poiché non esiste la possibilità di corrispondenza globale (
Questa espressione regolare abbastanza semplice cattura i primi codici per te
Names Default To Here(1);
dt = Open("$DOWNLOADS/data1.jmp");
failure_pattern = "[A-Z]+\d+[A-Z]?";
Eval(EvalExpr(
dt << New Column("A", Character, Nominal, << Formula(
Regex(:Repair Details, Expr(failure_pattern));
));
));
E poi il pasticcio di corrispondenza dei modelli (molto probabilmente può essere migliorato molto)
Names Default To Here(1);
dt = Open("$DOWNLOADS/data1.jmp");
str = "failure parts replaced (K3; LG69; AK4T). Proceed to next test";
dt << New Column("A", Character, Nominal, << Formula(
failure_pattern = "([A-Z]+\d+[A-Z]?){1,}";
found_list = {};
Pat Match(:Repair Details,
Pat Any(", (") + Pat Regex(failure_pattern) >> match + Pat Any(" .;,)") + Pat Test(
Insert Into(found_list, match);
0
)
);
Concat Items(found_list, ", ");
)); Ri: Estrarre il codice della parte di errore da una stringa non strutturataRecentemente ho scoperto una funzione/opzione JMP che può gestirlo abbastanza facilmente.Nuova colonna per corrispondenza del testo.
Prova questo script o utilizza l'utilità in Colonne->Utilità con la colonna Dettagli riparazione selezionata.
New Column by Text Matching(
Column( :Repair Details ),
Set Regex( Custom( Title( "parts" ), Regex( "([A-Z]+\d+[A-Z]?)" ), Result( "\[\1]\" ), ) ),
Output Column Name( "Failure Part Code" )
);

Ri: Estrarre il codice della parte di errore da una stringa non strutturataGrazie Jarmo. Questo è fantastico!
Ri: Estrarre il codice della parte di errore da una stringa non strutturataGrazie per aver condiviso questa funzione " Nuova colonna per corrispondenza del testo ". Aiuta.