Ich habe eine Frage läuft bereits mit diesem Problem verbunden, aber diese Frage ist für einen anderen Ansatz.Ersetzen von Text mit Regexp Ruby Capybara
Ich habe eine Textzeichenfolge auf einer Webseite, die einen Zeitstempel (hhmmss) enthält, nachdem eine Transaktion abgeschlossen ist.
Ich kann Time.now nicht verwenden, da die Verarbeitungszeit abhängig von vielen Faktoren variiert.
Der Text auf Seite lautet:
"Your transaction reference number is: 0 16123 (timestamp is here) A1"
ich im Elemente suchen würde mit dem Text in meinem Test zu lesen:
expect(find(location)).to have_text trans_text
Kann ich den Standort Text als Variable :
dann ersetzen Sie den Zeitstempel durch eine Regex dann erwarten Sie, dass Timestamp zwischen zwei Mal sein?
Ich habe zu tun versucht:
trans_text = find(location, text: 'Your transaction reference number is: 0 16123 (\d+) A1')
hatte aber keine Freude. Ich erhalte den folgenden Fehler:
Unable to find css "#main > div > div.section-content > div.two-col.retention-success > div.second-col > div.alert-complete > p" with text "Your retention certificate number is: 0 16123 (/d+) A1".
Wie könnte ich Eingabe eines regex den Zeitstempel Teil des Textes zu ersetzen?
Dank
Wh Im Format ist der Zeitstempel, können Sie ein Beispiel geben? Versuchen Sie '(\ w +)' anstelle von '(\ d +)' oder sogar '(. * +)' – Druzion
Das Format ist (hhmmss). "'Ihre Transaktionsreferenznummer lautet: 0 16123 120000 A1')". strftime wäre ('% H% M% S') – Tom
Ich habe bearbeitet, um hinzuzufügen, zeige den Fehler, den ich bekomme – Tom