Wie funktionieren reguläre Ausdrücke in Selen?

8

Ich möchte einen Teil einer ID speichern und den Rest wegwerfen. Zum Beispiel habe ich ein html-Element mit der ID 'element-12345'. Ich möchte 'Element-' rauswerfen und '12345' behalten. Wie kann ich das erreichen?

Ich kann den Wert folgendermaßen erfassen und wiedergeben:

%Vor%

Wenn ich den Test ausführe, bekomme ich etwas wie folgt:

%Vor%

Ich nehme mit der Selenium-IDE auf und kopiere den Test mit der Selenium Bridge-Vorrichtung in Fitnesse. Das Problem ist, dass ich jedes Mal, wenn ich den Test starte, eine saubere Datenbank benutze, mit zufälligen IDs, die ich während meines Tests erfassen und verwenden muss.

    
Andrew 31.12.2008, 17:30
quelle

3 Antworten

11

Die Lösung besteht darin, die JavaScript replace() -Funktion mit storeEval :

zu verwenden %Vor%

Wenn ich nun myID zurückgebe, bekomme ich nur die ID:

%Vor%     
Andrew 05.03.2009, 18:02
quelle
2

/ Element - (\ d +) / i

Dies ist ein regulärer Ausdruck, der die Zahlen nach dem Bindestrich erfasst.

    
Salty 31.12.2008 17:44
quelle
2

So etwas wie könnte funktionieren:

%Vor%

Regex erfordert XPath 2.0 - nicht sicher, welche Version Selenium implementiert.

    
Peter Boughton 30.01.2009 23:33
quelle