2833_it-IT
Trova Sostituisci scriptHo una colonna che contiene string. Voglio cercare nella colonna una sottostringa ed eliminarla. Potrei farlo tramite la finestra di dialogo Trova/Sostituisci, ma voglio farlo in uno script. Ho provato: Munger(:STATE, 1, "RX_", ""); Cosa mi aspettavo che facesse: cambia ogni occorrenza di "RX_xxxxx" in "xxxxx", ma non fa nulla. Che cosa sto facendo di sbagliato?Ri: Trova Sostituisci scriptProva a combinare munger() con la funzione foreachrow() per scorrere tutte le righe.
Ri: Trova Sostituisci scriptLa funzione SUBSTITUTE, se utilizzata con una stringa, sostituirà tutte le occorrenze di una sottostringa all'interno di una stringa. Non mi ero reso conto che se utilizzato con un elenco funziona solo con corrispondenze esatte della stringa da sostituire.
z = "aaabbcccc";
b = sostituto(z, "a", "x");
Risultati in:
"xxxbbbccc"
Quindi, potresti utilizzare il metodo for ogni riga o eseguire il loop su tutte le righe e utilizzare la funzione SUBSTITUTE.Ri: Trova Sostituisci scriptTrovo che la funzione SOSTITUISCI sia molto più semplice di MUNGER.
Potrebbe esserci un modo "one-liner", ma ecco cosa faccio:
Ri: Trova Sostituisci scriptPMroz, grazie.
MS, esiste una funzione che può essere utilizzata per trovare l'ultima occorrenza (ovvero cercare da destra a sinistra anziché da sinistra a destra) o devo scorrere la stringa per trovare l'ultima occorrenza e modificare l'offset di conseguenza?Re: Script Trova SostituisciEsiste una funzione "reverse" (ad esempio: reverse("abc") --> "cba") che potrebbe aiutare. Dovresti cercare il testo invertito che si verifica per primo nel valore della colonna invertita, sostituirlo con il testo sostitutivo invertito e quindi invertire la stringa risultante. Non so come ciò si confronti in termini di velocità con l'iterazione della ricerca in avanti.
Comments
There are no comments yet