Viele Spaltennamen, suchen Sie nach einem Teil der Zeichenfolge des Spaltennamens<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo,
Ich bin jetzt seit ein oder zwei Tagen dabei und scheine keine Lösung zu finden. Ich habe eine große Anzahl von Spaltennamen und möchte ein Skript schreiben, das jeden Spaltennamen "ansieht" und identifiziert, ob die ersten paar Zeichen die von mir angegebenen Zeichen sind. Die Liste der Spaltennamen hat eine Reihe von unterschiedlichen ersten 3 Zeichen, zum Beispiel: "XX". "JJ." "ZZ.". Was meine allgemeinen Absichten sind, diese Spalten zu durchsuchen und Spalten in Gruppen zu gruppieren, die Folgendes enthalten: "XX". "JJ." "ZZ." usw..
Betreff: Viele Spaltennamen, suchen Sie nach einem Teil der Zeichenfolge des SpaltennamensNochmals vielen Dank, es scheint mit meiner Testdatentabelle zu funktionieren! Ich habe versucht, die Word-Funktion mit einem Trennzeichen zu verwenden und daraus eine Liste zu generieren, aber Ihre Methode ist viel besser. Vielen Dank auch für den sehr hilfreichen Tipp zum 'Scripting Index'. Ich habe den Scripting Guide verwendet, aber der Index ist großartig. Ich sehe, dass ich so viel zu lernen habe, und ich schätze all Ihre Hilfe, um mir den Einstieg zu erleichtern.
Betreff: Viele Spaltennamen, suchen Sie nach einem Teil der Zeichenfolge des SpaltennamensDer Zeichenkette Äquivalent in JSL ist enthält .Übrigens ist die Menüoption Hilfe > Skriptindex sehr hilfreich.
Dieser Code gruppiert jeden Satz von XXs und YYs in separate Gruppen.
// Erstellen Sie eine Tabelle, um Dinge zu testen
dt = Neue Tabelle ( "Prüfen" , Zeilen hinzufügen ( 3 ) ,
Neue Spalte ( "XX1" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) , Werte einstellen ( [ 1 , 2 , 3 ] ) ) ,
Neue Spalte ( "XX2" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) , Werte einstellen ( [ 1 , 2 , 3 ] ) ) ,
Neue Spalte ( "YY1" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) , Werte einstellen ( [ 1 , 2 , 3 ] ) ) ,
Neue Spalte ( "YY2" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) , Werte einstellen ( [ 1 , 2 , 3 ] ) )
) ;
// Liste der Spaltennamen für die Tabelle
col_names = dt << Spaltennamen erhalten ( Schnur ) ;
// Zeichenfolge, nach der wir suchen
Gruppenliste = { "XX" , "JJ" } ;
// Schleife über Spaltengruppen
für ( ich = 1 , ich <= Gegenstände ( Gruppenliste ) , ich ++,
// Leere Liste, die mit gefundenen Spalten gefüllt werden soll
gefundene_liste = {} ;
Eine Gruppe = Gruppenliste [ ich ] ;
// Alle Spaltennamen durchlaufen und nach denen suchen, die mit "YY" beginnen
für ( k = 1 , k <= Gegenstände ( col_names ) , k ++,
Wenn ( beginnt mit ( col_names [ k ] , Eine Gruppe ) ,
einfügen in ( gefundene_liste , col_names [ k ]) ;
) ;
) ;
Wenn ( Gegenstände ( gefundene_liste ) > 0 ,
dt << Spalten gruppieren ( Eine Gruppe , gefundene_liste ) ;
) ;
) ;
Betreff: Viele Spaltennamen, suchen Sie nach einem Teil der Zeichenfolge des SpaltennamensPMroz,
Vielen Dank für Ihre Hilfe. Ich habe es getestet und es scheint die Liste zu generieren, die ich wollte.Ich war mir der Befehle "starts with" oder "insertinto" nicht bewusst, ich bin ziemlich neu in JSL. Ich habe nach einer Art 'InString'-Zeichenfunktion gesucht, die anscheinend nicht existiert.Eine andere Frage, jetzt, da meine Spaltennamen in einem Listen-/Zeilenvektor gespeichert sind, kann ich sie jetzt in einer Gruppe speichern? Nur um die Benutzeroberfläche auf dem JMP-Tisch etwas übersichtlicher zu gestalten? Nochmals vielen Dank für die Hilfe.
Betreff: Viele Spaltennamen, suchen Sie nach einem Teil der Zeichenfolge des SpaltennamensDies sollte Ihnen den Einstieg erleichtern.
// Erstellen Sie eine Tabelle, um Dinge zu testen
dt = Neue Tabelle ( "Prüfen" , Zeilen hinzufügen ( 3 ) ,
Neue Spalte ( "XX1" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) , Werte einstellen ( [ 1 , 2 , 3 ] ) ) ,
Neue Spalte ( "XX2" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) , Werte einstellen ( [ 1 , 2 , 3 ] ) ) ,
Neue Spalte ( "YY1" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) , Werte einstellen ( [ 1 , 2 , 3 ] ) ) ,
Neue Spalte ( "YY2" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) , Werte einstellen ( [ 1 , 2 , 3 ] ) )
) ;
// Liste der Spaltennamen für die Tabelle
col_names = dt << Spaltennamen erhalten ( Schnur ) ;
// Leere Liste, die mit gefundenen Spalten gefüllt werden soll
gefundene_liste = {} ;
// Zeichenfolge, nach der wir suchen
Auf der Suche nach = "JJ" ;
// Alle Spaltennamen durchlaufen und nach denen suchen, die mit "YY" beginnen
für ( ich = 1 , ich <= Gegenstände ( col_names ) , ich ++,
Wenn ( beginnt mit ( col_names [ ich ] , Auf der Suche nach ) ,
einfügen in ( gefundene_liste , col_names [ ich ]) ;
) ;
) ;
drucken ( gefundene_liste ) ;