Wie finde ich einen bestimmten Text (Wort) innerhalb eines Spaltenzeichens – nominaler Datentyp?Hallo,
Ich hätte gerne Hilfe bei der Suche nach einer bestimmten Zeichenfolge (eigentlich zwei Zeichenfolgen, sagen wir „JMP1“ und „JMP2“), die sich möglicherweise in einer Spalte mit Text befindet, während wir in dieser Spalte nach unten gehen und dann als nächstes eine Formelspalte haben um es mit „JMP1“ oder „JMP2“ zu kennzeichnen, wenn es es findet, oder andernfalls mit „NA“ zu kennzeichnen.
Ein paar Anmerkungen:
1- „JMP1“ oder „JMP2“ können an einer beliebigen Position im Text in Spalte 1 stehen
2- „JMP1“ und „JMP2“ sind nicht im selben Text in Spalte 1 enthalten
Meiner Meinung nach wird es für die Formelspalte (Spalte 2 – die Beschriftungsspalte) ungefähr so aussehen:
WENN (Spalte 1 enthält „JMP1“, dann Spalte 2 = „JMP1“, sonst (IF Spalte 1 enthält „JMP2“, dann Spalte 2 = „JMP2“, sonst Spalte 2 = „NA“));
Ich habe mir die Match-Funktion angesehen, war aber etwas verwirrt wegen der vielen Argumente und Ausdrücke. Vielleicht bin ich auch nicht auf dem richtigen Weg, deshalb brauche ich Rat
Es wäre großartig, wenn jemand seine Gedanken mitteilen könnte (vorzugsweise über den Formelbereich, wäre aber offen für Vorschläge über JSL).
Danke,
Vasco
Betreff: Wie finde ich einen bestimmten Text (Wort) innerhalb eines Spaltenzeichens – nominaler Datentyp?Ah, ich sehe die Verwirrung. Da wir also die vollständige Zeichenfolge verwendet haben, nach der Sie in der Funktion „Contains“ gesucht haben, haben wir entweder eine „1“ erhalten, da die Zeichenfolge an Position 1 begann, oder eine 0, da die Zeichenfolge an keiner Position begann. Dies funktionierte in der If-Anweisung. Wenn wir Contains(:column, „P“) verwendet hätten, hätte es für jede Zeile mit einem JMPx-Wert „3“ zurückgegeben, da P an der dritten Position steht. Ich habe über diese Nuance nicht nachgedacht (oder wusste sie wirklich nicht), da ich normalerweise die Funktion „Einschließen“ verwende, wie Sie es versucht haben ... ist da etwas oder nicht? Die Regex-Lösung ist ausgefeilter und eine gute Lösung für etwas, bei dem die Wiederholbarkeit bei sich ändernden Daten verwendet werden soll.Betreff: Wie finde ich einen bestimmten Text (Wort) innerhalb eines Spaltenzeichens – nominaler Datentyp?Hallo @vince_faller ,
Ich muss zugeben, dass Ihr Vorschlag für mich an dieser Stelle etwas zu weit fortgeschritten ist. Vielen Dank für Ihren Beitrag. 
Karens einfacher Vorschlag für mein Problem hat mir sehr gut gefallen.
Grüße,
Vasco
Betreff: Wie finde ich einen bestimmten Text (Wort) innerhalb eines Spaltenzeichens – nominaler Datentyp?Hallo @KarenC ,
Danke, es hat funktioniert!Einfach und unkompliziert 
Ich habe mir tatsächlich die Funktion „Contains“ in der Hilfe zu den Zeichenfunktionen angesehen, war aber mit der Beschreibung verwechselt, da dort steht, dass sie eine „numerische Position“ abruft. Ihre Lösung entsprach im Wesentlichen dem, was ich in meinem Beitrag erwähnt habe, musste nur mithilfe der Funktion „enthält“ in eine tatsächliche JMP-Formel umgewandelt werden.
Beifall,
Vasco
Betreff: Wie finde ich einen bestimmten Text (Wort) innerhalb eines Spaltenzeichens – nominaler Datentyp?Regex ist wirklich leistungsstark und wird in vielen Sprachen verwendet. Obwohl es zugegebenermaßen ziemlich schwer zu verstehen sein kann.
Names default to here(1);
dt = new table("Example",
New Column("JMPs", character, <<SET values=""></SET>Betreff: Wie finde ich einen bestimmten Text (Wort) innerhalb eines Spaltenzeichens – nominaler Datentyp?If( Contains( :name, "JA" ),
"JA",
If( Contains( :name, "MA" ),
"MA",
"NA"
)
)
Ich glaube, du bist da. JMP verfügt über eine Zeichenfunktion namens „Contains“. Sie können dies wie oben dargestellt für die Beispieldatendatei der großen Klasse verwenden. Weitere Informationen zu Zeichenfunktionen finden Sie in der Hilfe unter Hilfe zur Zeichenfunktion