Hier ist meine hash:Extract letzte Instanz String von String
---
0:
id: 11259
year: 1997
status: other
priority:
created_at: !ruby/object:ActiveSupport::TimeWithZone
utc: 2017-01-13 15:02:22.000000000 Z
zone: !ruby/object:ActiveSupport::TimeZone
name: Etc/UTC
time: 2017-01-13 15:02:22.000000000 Z
updated_at: !ruby/object:ActiveSupport::TimeWithZone
utc: 2017-01-13 15:02:22.000000000 Z
zone: !ruby/object:ActiveSupport::TimeZone
name: Etc/UTC
time: 2017-01-13 15:02:22.000000000 Z
1:
id: 82829
year: 1931
status: won
priority:
created_at: !ruby/object:ActiveSupport::TimeWithZone
utc: 2017-01-13 15:02:22.000000000 Z
zone: !ruby/object:ActiveSupport::TimeZone
name: Etc/UTC
time: 2017-01-13 15:02:22.000000000 Z
updated_at: !ruby/object:ActiveSupport::TimeWithZone
utc: 2017-01-13 15:02:22.000000000 Z
zone: !ruby/object:ActiveSupport::TimeZone
name: Etc/UTC
time: 2017-01-13 15:02:22.000000000 Z
Ich möchte eines von zwei Dingen tun:
(1) Extrahieren Sie beide ‚ids
id: 11259
id: 82829
(2) Nur die letzte "ID" extrahieren:
id: 82829
Bisher habe ich nur in der Lage sein, die erste ID zu extrahieren:
REGEXP_SUBSTR(hash_name, "id: .*?\n")
Dank.
Sind Sie sicher, dass Sie MySQL verwenden? Es hat keine 'REGEXP_SUBSTR()' Funktion. Diese Funktion existiert nur in Oracle und MariaDB. – Barmar
MariaDB verwendet PCRE, Sie können also ein negatives Lookahead verwenden, um nach 'id: 'zu suchen, auf das später in der Zeichenfolge keine weitere' id:' folgt. Dann wird die letzte ID: in der Zeichenfolge übereinstimmen. – Barmar