Ich habe eine Liste als Ausgabe aus einem JSL-Skript. Die Liste hat die Form
{"John.01.02", "John.01.02 2"," John.01.02 3", "John.01.02 4", "John.01.02 5 Distribution", "John.01.02 6 Distribution", "John.01.02 7 Distribution", "John.01.02 8 - Graph Builder", "John.01.02 9 - Graph Builder", "John.01.02 10 - Graph Builder"}Ich möchte eine Operation machen wenn das Wort "Verteilung" erscheint in der obigen Liste und eine andere Operation wenn das Wort "Graph Builder" tritt beim Durchlaufen der Elemente in der Liste auf. Ich denke daran, die Funktion enthält () in den Zeilen von zu verwenden
if (Contains(list, "Distribution"),</CODE></PRE><P>,etwas tun);<BR /> sonst mach was anderes.</P><P>Ich kann jedoch nicht die richtigen Listenelemente in der Liste auswählen und habe mich gefragt, ob ich einen Platzhalter verwenden und in die Zeilen von schreiben kann</P><PRE><CODE class=" language-jsl">if (Contains(list, "<STRONG>Distribution*</STRONG>"),
was eindeutig nicht funktioniert.
Wenn ein Platzhalter innerhalb der Funktion enthält() möglich ist, wie lautet die Syntax?
Wenn nicht, wie kann ich die Operationen erreichen, die ich suche?
Wenn Sie Contains() verwenden, um eine Liste zu durchsuchen, werden nur vollständige Übereinstimmungen gefunden.Wenn Sie jedoch eine Zeichenfolge durchsuchen, werden mithilfe von Contains() Zeichenfolgen gefunden, die die Suchkriterien an einer beliebigen Stelle innerhalb der Zeichenfolge enthalten.So können Sie mit der Methode im folgenden Skript bekommen, was Sie wollen
Names Default To Here( 1 );
theList = {"John.01.02", "John.01.02 2", " John.01.02 3", "John.01.02 4",
"John.01.02 5 Distribution", "John.01.02 6 Distribution", "John.01.02 7 Distribution",
"John.01.02 8 - Graph Builder", "John.01.02 9 - Graph Builder", "John.01.02 10 - Graph Builder"};
For( i = 1, i <= N Items( theList ), i++,
If( Contains( theList[i], "Distribution" ),
Break()
)
);
If( i <= N Items( theList ),
Show( theList[i] )
);