Beispiele für String- und Index-Algorithmus
Das folgende Beispiel zeigt ein XML-Regelfragment, das den Standardwert-Algorithmus Substring verwendet, um als Namensattribut die ersten 5 Zeichen des Nummernattributs festzulegen.
<AttrValue id=”name” algorithm=”wt.rule.algorithm.Substring”>
<Attr id=”number”/>
<Arg>0</Arg>
<Arg>5</Arg>
</AttrValue>
Das folgende Beispiel zeigt ein XML-Regelfragment, das die Algorithmen Substring und IndexOf verwendet, um als Namen eines CAD-Dokuments den CAD-Namen des Dokuments ohne die Dateinamenerweiterung festzulegen:
<AttrValue id="name" algorithm="wt.rule.algorithm.Substring">
<Attr id="CADName"/>
<Arg>0</Arg>
<Value algorithm="wt.rule.algorithm.IndexOf">
<Attr id="CADName"/>
<Arg>.</Arg>
</Value>
</AttrValue>
In diesem Beispiel werden die folgenden Argumente verwendet:
Das erste Argument verwendet den Attr-Tag, um die ursprüngliche Zeichenfolge zu identifizieren (in diesem Fall ein Attribut).
Das zweite Argument verwendet den Arg-Tag, um den Index des Anfangszeichens des Substrings zu identifizieren, wobei 0 der Index des ersten Zeichens in der ursprünglichen Zeichenfolge ist.
Das dritte Argument verwendet den Value-Tag, um den Index des Zeichens zu bestimmen, an dem der Substring endet. Innerhalb des Value-Tags befindet sich der IndexOf-Algorithmus, für den zwei zusätzliche Argumente erforderlich sind, die zum Erzeugen des benötigten Index verwendet werden.
In diesem Beispiel wird angenommen, dass in dem Namen des CAD-Dokuments nur ein Punkt vor der Dateinamenerweiterung enthalten ist.
Wenn der Name des CAD-Dokuments mehrere Punkte enthalten könnte, können Sie den Algorithmus LastIndexOf anstelle von IndexOf verwenden, um die Zeichen nach dem letzten Punkt zu entfernen:
<AttrValue id="name" algorithm="wt.rule.algorithm.Substring">
<Attr id="CADName"/>
<Arg>0</Arg>
<Value algorithm="wt.rule.algorithm.LastIndexOf">
<Attr id="CADName"/>
<Arg>.</Arg>
</Value>
</AttrValue>
War dies hilfreich?