2016-04-25 5 views
1

Ich benutze Studio und muss MVEL Ausdrücke verwenden. Kann mir bitte jemand sagen, wie ich alle Zeichen in einem Feld nach dem Unterstreichungszeichen extrahieren kann. Ich lese diese Werte aus einer XML-Datei. Siehe unten das Beispiel.Wie kann ich Teilstring-String-Funktion in MVEL-Ausdrücke verwenden

Aktion:

NEW_3456 
NEW_CW234789 

Also, ich möchte meine MVEL expresion alle Werte nach Strich zu extrahieren. Das Ergebnis für den obigen Ausdruck sollte also 3456 bzw. CW234789 lauten.

Hier ist, was ich verwende: Deklarieren Sie eine Variable zum Navigieren und wählen Sie den Wert des Feldes Aktion.

Lets sagen, dass die deklarierte Variable

props['applicant.Status1'] 

Der Wert dieser Variablen ist:

props['applicant.Status1'] = parts[0].xpath('/row/Action/normalize-space(substring(text(),5,8))') 

Der Ausgang ist 3456 und CW23 was in Ordnung ist.

Jetzt ist das Problem, um den ganzen Wert afterre Unterstrich zu extrahieren, benutzte ich den untenstehenden Ausdruck, und ich bekomme nicht den gewünschten Wert.

props['applicant.Status1'] = parts[0].xpath('/row/Action/normalize-space(substring-after(text(),5))') 

Kann mir bitte jemand sagen, ob der obige Ausdruck richtig ist. Gibt es eine andere Möglichkeit, den Wert zu bekommen, den ich wünsche? Vielen Dank!

+0

Versuchen Sie 'substring-after (text()," 5 "))' 'zu verwenden –

Antwort

0

„Kann mir bitte jemand sagen, wie kann ich alle Zeichen in einem Feld nach Unterstrich extrahieren“

Diese einfache gegeben sein sollte, dass Sie substring-after() Funktion wusste:

/row/Action/normalize-space(substring-after(., "_"))