Frage zur „Wort“-Formel, Zweck, ein Zeichen zu teilen und ein Schlüsselwort zu kürzenIch habe eine Tabelle mit einer Spalte, der Name ist „Batch-ID“, ich möchte ein Skript verwenden, um eine Spalte zu generieren, der Name ist „Kurz-ID“, die Formel verwendet Word( 2, :Batch-ID, „L22DD1“), ich möchte nur um das 2. Wort zu erhalten, zum Beispiel E3 L22DD1 K27--->K27, aber wie kommt es, dass nach dem Ausführen von JSL das Ergebnis K2 und nicht K27 ist? Helfen Sie mir bitte, andere Lösungen zu finden, falls es nicht funktioniert?
| Batch-ID | Kurz-ID |
| M3L22DD1K2 | K2 |
| E3L22DD1K45 | K45 |
| M3L22DD1K41 | K4 |
| E3L22DD1K27 | K27 |
| M3L22DD1K3 | K3 |
| M3L22DD1K42 | K42 |
| M3L22DD1K43 | K43 |
| M3L22DD1K44 | K44 |
| M3L22DD1K45 | K45 |
| M3L22DD1K4 | K4 |
| M3L22DD1K5 | K5 |
| M3L22DD1K6 | K6 |
| E3L22DD1K46 | K46 |
| E3L22DD1K47 | K47 |
| E3L22DD1K48 | K48 |
| E3L22DD1K49 | K49 |
| E3L22DD1K50 | K50 |
| E3L22DD1K51 | K51 |
| E3L22DD1K52 | K52 |
Automatisierung und SkripterstellungBetreff: Frage zur „Wort“-Formel, Zweck, ein Zeichen zu teilen und das Schlüsselwort zu kürzenWenn Sie wissen, was die Unterbrechungszeichenfolge ist, d. h L22DD1, dann können die beiden Teile mit den folgenden zwei Zuweisungsanweisungen identifiziert und getrennt werden
Für die Kurz-ID
Substr( :Batch ID, Contains( :Batch ID, "L22DD1" ) + 6 )
Für den ersten Teil der Chargen-ID
Substr( :Batch ID, 1, Contains( :Batch ID, "L22DD1" ) + 5 )
Betreff: Frage zur „Wort“-Formel, Zweck, ein Zeichen zu teilen und das Schlüsselwort zu kürzenIch bin so dankbar für die Hilfe, es funktioniert jetzt gut und ich verstehe auch mehr über die Funktion von „Wort“.
Betreff: Frage zur „Wort“-Formel, Zweck, ein Zeichen zu teilen und das Schlüsselwort zu kürzenHallo,
Das Problem bei der Verwendung einer Zeichenfolge als Trennzeichen besteht darin, dass die Funktion Word() sie nicht als eindeutige Zeichenfolge, sondern als Sammlung einzelner Trennzeichen versteht. Daher wird in Ihrem Beispiel, in dem M3L22DD1K41 K4 ergibt, die Ziffer „1“ in Ihrem Trennzeichen in der Zeichenfolge „L22DD1“ gefunden.
Eine Möglichkeit, dieses Problem zu lösen, besteht darin, die Substitute-Funktion innerhalb der Word-Funktion wie folgt zu verwenden:
Wort (2, Ersatz für (:BATCH_ID, „L22DD1“, „-“), „-“)
Auf diese Weise wird jedes Vorkommen von „L22DD1“ innerhalb der Formel durch „-“ ersetzt und dann wird das gewünschte Wort basierend auf dem „-“-Trennzeichen extrahiert
Ich hoffe es hilft.
Am besten
TSBetreff: Frage zur „Wort“-Formel, Zweck, ein Zeichen zu teilen und das Schlüsselwort zu kürzenDanke, Sir, es funktioniert gut, wenn der Name derselben Regel folgt.
aber wenn der Inhalt einer Zeile unerwartet geändert wird, zum Beispiel „M3 L22DD1 X10_I35_O55“, was ich möchte, ist der Kurzname „X10_I35_O55“, habe eine bessere Lösung.
dann weiter verwenden“ L22DD1" separate Teilen Sie das Wort in zwei Teile und erhalten Sie den letzten.M3 L22DD1 X10_I35_O55-->X10_I35_O55?
Betreff: Frage zur „Wort“-Formel, Zweck, ein Zeichen zu teilen und das Schlüsselwort zu kürzenHier ist die Formel, die ich zum Erstellen der Spalte „Kurz-ID“ verwenden würde
New Column( "Short ID", character, formula( "K" || Word( -1, :Batch ID, "K" ) ) );