Letzten zwei Zeichen eines Strings ersetzen

Getting started ... Alles für einen gelungenen Start.
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Letzten zwei Zeichen eines Strings ersetzen

Beitrag von mgo (ForumUser / 7 / 0 / 0 ) »
Guten Morgen,

wie kann ich in einem String zb. 12346565 die letzte 65 durch eine 68 ersetzen, so dass der String am Ende so aussieht 12346568 ?

Ich habe es bisher mit der Replace funktion versucht, diese ersetz aber nur das erste Aufkommen von 65.

Danke + Gruß
Marco

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Search

Beitrag von Thomas R. (Expert / 755 / 78 / 34 ) »
Hallo Marko,
mit dem Befehl SEARCH zuerst das letzte vorkommen suchen und dann an dieser Stelle ersetzen.

MfG
Thomas R.

Ein weiteres ABAP-Forum ist zu finden unter: http://yaabb.de

Re: Search

Beitrag von mgo (ForumUser / 7 / 0 / 0 ) »
Hallo Thomas,

danke erst mal für deine Antwort.

Kann ich direkt mit dem SEARCH Befehl auch ersetzen?

Wenn nicht, wie kann ich dann bei REPLACE die Position ab der Ersetzt werden soll übergeben?

Danke
Marco

Search

Beitrag von Thomas R. (Expert / 755 / 78 / 34 ) »
Hallo Marko,
mit dem Befehl SEARCH zuerst das letzte vorkommen suchen und dann an dieser Stelle ersetzen.

MfG
Thomas R.

Ein weiteres ABAP-Forum ist zu finden unter: http://yaabb.de

Search

Beitrag von Thomas R. (Expert / 755 / 78 / 34 ) »
Hallo Marco,
anbei eine Beispielprozedur:

FORM replace_last USING value(i_old) TYPE csequence
value(i_new) TYPE csequence
CHANGING c_text TYPE csequence.
DATA:
lv_oldlen TYPE i,
lv_searchstart TYPE i,
lv_lastfound TYPE i.

lv_oldlen = STRLEN( i_old ).
IF lv_oldlen > 0.
lv_lastfound = - lv_oldlen.
lv_searchstart = 1.
SEARCH c_text FOR i_old STARTING AT lv_searchstart.
WHILE sy-subrc = 0.
lv_lastfound = lv_lastfound + sy-fdpos + lv_oldlen.
lv_searchstart = lv_searchstart + sy-fdpos + lv_oldlen.
SEARCH c_text FOR i_old STARTING AT lv_searchstart.
ENDWHILE.
IF lv_lastfound >= 0.
REPLACE SECTION OFFSET lv_lastfound LENGTH lv_oldlen
OF c_text WITH i_new.
ENDIF.
ENDIF.
ENDFORM. "replace_last

MfG
Thomas R.

Ein weiteres ABAP-Forum findet sich unter http:\\yaAbb.de

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1781
Views
Ersetzen von Zeichen
von SAP_ENTWICKLER » 10.12.2018 08:01 • Verfasst in ABAP® Core
3
Antw.
4237
Views
Nichtdruckbare Zeichen ersetzen
von asdfjklö » 01.07.2008 13:21 • Verfasst in ABAP® für Anfänger
9
Antw.
1382
Views
Im String mit Regex Zeichen ersetzen
von MarkusW » 20.08.2020 13:42 • Verfasst in ABAP® Core
5
Antw.
1260
Views
Letzte String Zeichen ersetzen
von ichse18577 » 13.11.2019 14:02 • Verfasst in ABAP® für Anfänger
5
Antw.
4938
Views
Zeichen in einem Textfeld ersetzen
von kbit100 » 07.06.2018 14:30 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 18 Stunden von black_adept gelöst 23 / 3837
User Exit EXIT_RQCPRM10_001
vor 18 Stunden von a-dead-trousers 2 / 327
Trennen Strasse und Hausnummer
Gestern von payten 13 / 10697
Daten an Tabelle binden
Gestern von Lukas Sanders 2 / 1380

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 18 Stunden von black_adept gelöst 23 / 3837
User Exit EXIT_RQCPRM10_001
vor 18 Stunden von a-dead-trousers 2 / 327
Trennen Strasse und Hausnummer
Gestern von payten 13 / 10697
Daten an Tabelle binden
Gestern von Lukas Sanders 2 / 1380

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2911
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9505