Hallo,
ich habe ein Problem bei der Definition eines regulären Ausdrucks.
Ich möchte mit folgendem InputString
<name>ZM_TESSAMW _GET_VORGANGSNR mwwf_common _0001</name>, <name>ZM_TESSAMW _HR_MITARBEITER mwwf_common 0002</name>
die Elemente zwischen <name>/</name>-Tags auflösen.
Bisher habe ich dies mit folgender Expression versucht:
"(?s)(<name>(.*?)</name>)?"
per matcher.find() möchte ich später die einzelnen Gruppierungen - sprich matcher.group(2) auflösen.
Leider ist es jedoch so, dass bei meinem Ausdruck die beiden inneren Tags </name>, <name> immer mit im Result auftauchen.
Ich vermute es liegt an einer "non-greedy" / "greedy" - Problematik.
Kann mir jemand helfen und angeben was meinem Statement fehlt?
Im Voraus vielen Dank!
ich habe ein Problem bei der Definition eines regulären Ausdrucks.
Ich möchte mit folgendem InputString
<name>ZM_TESSAMW _GET_VORGANGSNR mwwf_common _0001</name>, <name>ZM_TESSAMW _HR_MITARBEITER mwwf_common 0002</name>
die Elemente zwischen <name>/</name>-Tags auflösen.
Bisher habe ich dies mit folgender Expression versucht:
"(?s)(<name>(.*?)</name>)?"
per matcher.find() möchte ich später die einzelnen Gruppierungen - sprich matcher.group(2) auflösen.
Leider ist es jedoch so, dass bei meinem Ausdruck die beiden inneren Tags </name>, <name> immer mit im Result auftauchen.
Ich vermute es liegt an einer "non-greedy" / "greedy" - Problematik.
Kann mir jemand helfen und angeben was meinem Statement fehlt?
Im Voraus vielen Dank!