SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Downloaden Sie, um offline zu lesen
ABAP 7.02 New Features
Neue Stringfunktionen


     Johann Fößleitner,
     Cadaxo GmbH
Inhaltsverzeichnis
  ➤   cmax/cmin - Zeichenartige Extremwertfunktion
  ➤   condense - Verdichtungsfunktion
  ➤   concate_lines_of - Verkettungsfunktion
  ➤   escape - Fluchtsymbolfunktion
  ➤   insert - Einfügefunktion
  ➤   match - Abgleichfunktion
  ➤   repeat - Wiederholfunktion
  ➤   replace - Ersetzungsfunktion
  ➤   reverse - Umdrehfunktion
  ➤   shift_left/shift_right - Verschiebefunktion
  ➤   substring - Teilfeldfunktion
  ➤   to_upper/to_lower/… - Groß-/Kleinschreibefunktion
  ➤   translate - Umsetzfunktion
  ➤   distance - Ähnlichkeitsfunktion
cmax/cmin – Zeichenartige Extremwertfunktion
•   Vergleich von bis zu 9 zeichenartigen Argumenten
•   Ergebnis ist das kleinste (cmin) oder größte (cmax)
    übergebene Zeichen
•   Vergleich auf Basis der verwendeten Codepage
cmax/cmin – Zeichenartige Extremwertfunktion


l_result = cmax(   val1 = 'AAAC' val2 = 'AAAB' val3 = 'AAAD' ).
Ergebnis: AAAD
l_result = cmax(   val1 = 'AAAC' val2 = 'AZAB' val3 = 'AAAD' ).
Ergebnis: AZAB
l_result = cmin(   val1 = 'AAAC' val2 = 'AAAB' val3 = 'AAAD' ).
Ergebnis: AAAB
l_result = cmin(   val1 = 'AAAC' val2 = '0AAC' val3 = 'AAAD' ).
Ergebnis: 0AAC
condense – Verdichtungsfunktion
•   Verdichtet den Inhalt einer Zeichenkette
•   Bietet mehr Möglichkeiten als das ABAP Kommando
    Condense
     •   Entfernen von führenden oder endenden Zeichen


l_string = condense( val = ‘XXXabcXXXdefXXX‘ del = ‘X‘ from = ‘X‘ to = ‘X‘ ).
Ergebnis: abcXdef
concat_lines_of – Verkettungsfunktion
•   Verkettet Zeilen einer internen Tabelle in eine Zeichenkette
•   Zusatz sep ermöglicht die Trennung durch einen Separator


L_string = concate_lines_of( table = tab sep = ‘;‘ ).
escape – Fluchtsymbolfunktion
• Ermöglicht das regelbasierte Ersetzen eines Strings durch
  Fluchtsymbole
• Verwendbare Regeln sind als Konstanten in
  CL_ABAP_FORMAT definiert
escape – Fluchtsymbolfunktion
DATA l_string0 TYPE string.
DATA l_string1 TYPE string.

l_string0 = 'http://www.cadaxo.com'.
l_string1 = escape( val = l_string0 format = cl_abap_format=>e_url_full ).

WRITE: / l_string0, / l_string1.

Ergebnis:

http://www.cadaxo.com
http%3A%2F%2Fwww.cadaxo.com
insert – Einfügefunktion
•   Einfügen einer Zeichenkette an beliebiger Stelle einer
    anderen Zeichenkette

L_string = ‘NewsABAP‘.
L_result = insert( val = l_string sub = ‘ in ‘ off = 5 ).
Write: l_string.

Ergebnis:

News in ABAP
match – Abgleichfunktion
•   Durchsucht einen Text nach einer bestimmten Regex-
    Übereinstimmung
•   Weitere Informationen zu Regex sind der SAP Online
    Dokumentation zu entnehmen
repeat – Wiederholfunktion
•   Erzeugt eine Zeichenkette durch Wiederholung einer
    anderen Zeichenkette

l_string = repeat( val = ‘ABC‘ occ = 5 ).
write: l_string.

Ergebnis:

ABCABCABCABCABC
replace – Ersetzungsfunktion
•   Ersetzt einen Teilbereich einer Zeichenkette
•   Teilbereich kann über Offset-/Längen oder Regex festgelegt
    werden.

l_result = replace( val = 'ABAP xx GOOD' off = 6 len = 0 with = 'IS' ).
Ergebnis: ‘ABAP xISx GOOD‘

l_result = replace( val = 'ABAP xx GOOD' off = 4 len = 4 with = 'IS' ).
Ergebnis: ‘ABAPISGOOD‘
reverse – Umdrehfunktion
                 •   Umdrehen einer kompletten Zeichenkette


                 L_string = ‘PABA‘.
                 L_string = reverse( l_string ).

                 Ergebnis: ABAP




PS: Wenn jemand eine sinnvolle Verwendung für diese Funktion findet, bitte um Info!
substring, substring_... – Teilfeldfunktion
•   Ermittlung eines Teilfeldes aus einer gegebenen
    Zeichenmenge
l_result = substring( val = 'ABCDEFGH' off = 3 len = 4 ).
Ergebnis: ‘DEFG‘
l_result = substring_from( val = 'ABCDEFGH' sub = 'DEF' ).
Ergebnis: ‘DEFGH‘
l_result = substring_after( val = 'ABCDEFGH' sub = 'DEF' ).
Ergebnis: ‘GH‘
l_result = substring_before( val = 'ABCDEFGH' sub = 'DEF' ).
Ergebnis: ‘ABC‘
l_result = substring_to( val = 'ABCDEFGH' sub = 'DEF' ).
Ergebnis: ‘ABCDEF‘
to_upper, to_lower, to_mixed, from_mixed
Groß-/Kleinschreibungsfunktionen
•   to_upper/to_lower entspricht dem Kommando TRANSLATE
    TO UPPER/LOWER CASE
•   to_mixed setzt alle Buchstaben ab der 2. Stelle auf
    Kleinbuchstaben um
•   from_mixed fügt von links nach rechts ab der 2. Position
    das erste im Zusatz sep angegebene Zeichen ein
     •   Weitere Zusätze sind case und min
to_upper, to_lower, to_mixed, from_mixed
Groß-/Kleinschreibungsfunktionen



l_result = to_mixed( val = 'CADAXO GMBH' ).

Ergebnis: ‘Cadaxo gmbh‘
distance - Ähnlichkeitsfunktion
                   •   Ermittelt den Editierabstand (Levenshtein-Distanz) zweier
                       Zeichenketten
                         •   Minimale Anzahl von Einfüge-, Lösch- oder Ersetzungsvorgängen um
                             von Zeichenkette 1 auf Zeichenkette 2 zu kommen.

                   l_int = distance( val1 = 'CADAXO GMBH' val2 = 'ADAXOGMBH' ).
                   Ergebnis: 2 (Ein „C“ und ein Leerzeichen müssen eingefügt werden)

                   l_int = distance( val1 = 'ABCD' val2 = 'EFGH' ).
                   Ergebnis: 4 (Alle Zeichen müssen ausgetauscht werden)




http://de.wikipedia.org/wiki/Levenshtein-Distanz
Die Vervielfältigung bzw. Übersetzung dieses Dokumentes
oder Teilen daraus ist ohne ausdrückliche Genehmigung
durch die Cadaxo GmbH nicht zulässig.

SAP®, ABAP™, R/3®, SAP NetWeaver® sind Marken oder
eingetragene Marken der SAP AG.

Alle anderen Produkte sind Marken oder eingetragene
Marken der jeweiligen Firmen.

© 2013 Cadaxo GesmbH. Alle Rechte vorbehalten.

Weitere ähnliche Inhalte

Andere mochten auch

Abap query
Abap queryAbap query
Abap query
brtkow
 
Abap 7 02 new features - new string functions
Abap 7 02   new features - new string functionsAbap 7 02   new features - new string functions
Abap 7 02 new features - new string functions
Cadaxo GmbH
 
Comandos e funções em abap
Comandos e funções em abapComandos e funções em abap
Comandos e funções em abap
alienscorporation
 
Abap coding standards
Abap coding standardsAbap coding standards
Abap coding standards
surendra1579
 
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.docManikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
manikanta sai kumar karri
 
Lecture01 abap on line
Lecture01 abap on lineLecture01 abap on line
Lecture01 abap on line
Milind Patil
 
Abap course chapter 6 specialities for erp software
Abap course   chapter 6 specialities for erp softwareAbap course   chapter 6 specialities for erp software
Abap course chapter 6 specialities for erp software
Milind Patil
 

Andere mochten auch (15)

ABAP Test & Troubleshooting @SITMuc 2013
ABAP Test & Troubleshooting @SITMuc 2013ABAP Test & Troubleshooting @SITMuc 2013
ABAP Test & Troubleshooting @SITMuc 2013
 
Abap query
Abap queryAbap query
Abap query
 
Qué es abap
Qué es abapQué es abap
Qué es abap
 
Abap 7 02 new features - new string functions
Abap 7 02   new features - new string functionsAbap 7 02   new features - new string functions
Abap 7 02 new features - new string functions
 
View - Tutorial ABAP
View - Tutorial ABAPView - Tutorial ABAP
View - Tutorial ABAP
 
Comandos e funções em abap
Comandos e funções em abapComandos e funções em abap
Comandos e funções em abap
 
Icones - ABAP
Icones - ABAPIcones - ABAP
Icones - ABAP
 
Sap abap Q&A
Sap abap Q&A Sap abap Q&A
Sap abap Q&A
 
Funções - Tutorial ABAP
Funções - Tutorial ABAPFunções - Tutorial ABAP
Funções - Tutorial ABAP
 
Abap coding standards
Abap coding standardsAbap coding standards
Abap coding standards
 
Basic abap oo
Basic abap ooBasic abap oo
Basic abap oo
 
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.docManikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
Manikanta Sai Kumar Karri SAP ABAP and OO ABAP 3 Years.doc
 
Lecture01 abap on line
Lecture01 abap on lineLecture01 abap on line
Lecture01 abap on line
 
SAP ABAP Proxy Objects: Configuración del entorno
SAP ABAP Proxy Objects: Configuración del entornoSAP ABAP Proxy Objects: Configuración del entorno
SAP ABAP Proxy Objects: Configuración del entorno
 
Abap course chapter 6 specialities for erp software
Abap course   chapter 6 specialities for erp softwareAbap course   chapter 6 specialities for erp software
Abap course chapter 6 specialities for erp software
 

Ähnlich wie Abap 7.02 new features - neue stringfunktionen

Ähnlich wie Abap 7.02 new features - neue stringfunktionen (8)

Perl 6 Regex und Grammars
Perl 6 Regex und GrammarsPerl 6 Regex und Grammars
Perl 6 Regex und Grammars
 
Php Schulung
Php SchulungPhp Schulung
Php Schulung
 
Funktionale Programmierung und mehr mit Scala
Funktionale Programmierung und mehr mit ScalaFunktionale Programmierung und mehr mit Scala
Funktionale Programmierung und mehr mit Scala
 
Webinar - ABAP Releasenotes 7.53/7.54
Webinar - ABAP Releasenotes 7.53/7.54Webinar - ABAP Releasenotes 7.53/7.54
Webinar - ABAP Releasenotes 7.53/7.54
 
Webinar ABAP 7.51 Releaseinformationen
Webinar ABAP 7.51 ReleaseinformationenWebinar ABAP 7.51 Releaseinformationen
Webinar ABAP 7.51 Releaseinformationen
 
Webinar Modern ABAP
Webinar Modern ABAPWebinar Modern ABAP
Webinar Modern ABAP
 
Reguläre Ausdrucke (PCRE)
Reguläre Ausdrucke (PCRE)Reguläre Ausdrucke (PCRE)
Reguläre Ausdrucke (PCRE)
 
02.EinfacheProgramme und grundsymbole von
02.EinfacheProgramme und grundsymbole von02.EinfacheProgramme und grundsymbole von
02.EinfacheProgramme und grundsymbole von
 

Mehr von Cadaxo GmbH

Mehr von Cadaxo GmbH (13)

Webinar SAP/ABAP und Microsoft
Webinar  SAP/ABAP und MicrosoftWebinar  SAP/ABAP und Microsoft
Webinar SAP/ABAP und Microsoft
 
Webinar ABAP Managed Database Procedures
Webinar ABAP Managed Database ProceduresWebinar ABAP Managed Database Procedures
Webinar ABAP Managed Database Procedures
 
Webinar - ABAP Development Tools
Webinar - ABAP Development ToolsWebinar - ABAP Development Tools
Webinar - ABAP Development Tools
 
Webinar - Entwurfsmuster in ABAP
Webinar - Entwurfsmuster in ABAPWebinar - Entwurfsmuster in ABAP
Webinar - Entwurfsmuster in ABAP
 
Webinar - SAP Gateway
Webinar  - SAP GatewayWebinar  - SAP Gateway
Webinar - SAP Gateway
 
Webinar - ABAP CDS Views
Webinar - ABAP CDS ViewsWebinar - ABAP CDS Views
Webinar - ABAP CDS Views
 
ABAP CodeRetreat 20.5.2017 Vienna - Refactoring
ABAP CodeRetreat 20.5.2017 Vienna - RefactoringABAP CodeRetreat 20.5.2017 Vienna - Refactoring
ABAP CodeRetreat 20.5.2017 Vienna - Refactoring
 
SQL Cockpit 3.1 - Overview
SQL Cockpit 3.1 - OverviewSQL Cockpit 3.1 - Overview
SQL Cockpit 3.1 - Overview
 
Clean code in ABAP
Clean code in ABAPClean code in ABAP
Clean code in ABAP
 
Webinar - Boost your ABAP
Webinar - Boost your ABAPWebinar - Boost your ABAP
Webinar - Boost your ABAP
 
SQL Cockpit - Releasenotes 3.0
SQL Cockpit - Releasenotes 3.0SQL Cockpit - Releasenotes 3.0
SQL Cockpit - Releasenotes 3.0
 
Cadaxo SQL Cockpit 2.0 - Neue Features im Detail
Cadaxo SQL Cockpit 2.0 - Neue Features im DetailCadaxo SQL Cockpit 2.0 - Neue Features im Detail
Cadaxo SQL Cockpit 2.0 - Neue Features im Detail
 
Funktionstests in SAP
Funktionstests in SAPFunktionstests in SAP
Funktionstests in SAP
 

Abap 7.02 new features - neue stringfunktionen

  • 1. ABAP 7.02 New Features Neue Stringfunktionen Johann Fößleitner, Cadaxo GmbH
  • 2. Inhaltsverzeichnis ➤ cmax/cmin - Zeichenartige Extremwertfunktion ➤ condense - Verdichtungsfunktion ➤ concate_lines_of - Verkettungsfunktion ➤ escape - Fluchtsymbolfunktion ➤ insert - Einfügefunktion ➤ match - Abgleichfunktion ➤ repeat - Wiederholfunktion ➤ replace - Ersetzungsfunktion ➤ reverse - Umdrehfunktion ➤ shift_left/shift_right - Verschiebefunktion ➤ substring - Teilfeldfunktion ➤ to_upper/to_lower/… - Groß-/Kleinschreibefunktion ➤ translate - Umsetzfunktion ➤ distance - Ähnlichkeitsfunktion
  • 3. cmax/cmin – Zeichenartige Extremwertfunktion • Vergleich von bis zu 9 zeichenartigen Argumenten • Ergebnis ist das kleinste (cmin) oder größte (cmax) übergebene Zeichen • Vergleich auf Basis der verwendeten Codepage
  • 4. cmax/cmin – Zeichenartige Extremwertfunktion l_result = cmax( val1 = 'AAAC' val2 = 'AAAB' val3 = 'AAAD' ). Ergebnis: AAAD l_result = cmax( val1 = 'AAAC' val2 = 'AZAB' val3 = 'AAAD' ). Ergebnis: AZAB l_result = cmin( val1 = 'AAAC' val2 = 'AAAB' val3 = 'AAAD' ). Ergebnis: AAAB l_result = cmin( val1 = 'AAAC' val2 = '0AAC' val3 = 'AAAD' ). Ergebnis: 0AAC
  • 5. condense – Verdichtungsfunktion • Verdichtet den Inhalt einer Zeichenkette • Bietet mehr Möglichkeiten als das ABAP Kommando Condense • Entfernen von führenden oder endenden Zeichen l_string = condense( val = ‘XXXabcXXXdefXXX‘ del = ‘X‘ from = ‘X‘ to = ‘X‘ ). Ergebnis: abcXdef
  • 6. concat_lines_of – Verkettungsfunktion • Verkettet Zeilen einer internen Tabelle in eine Zeichenkette • Zusatz sep ermöglicht die Trennung durch einen Separator L_string = concate_lines_of( table = tab sep = ‘;‘ ).
  • 7. escape – Fluchtsymbolfunktion • Ermöglicht das regelbasierte Ersetzen eines Strings durch Fluchtsymbole • Verwendbare Regeln sind als Konstanten in CL_ABAP_FORMAT definiert
  • 8. escape – Fluchtsymbolfunktion DATA l_string0 TYPE string. DATA l_string1 TYPE string. l_string0 = 'http://www.cadaxo.com'. l_string1 = escape( val = l_string0 format = cl_abap_format=>e_url_full ). WRITE: / l_string0, / l_string1. Ergebnis: http://www.cadaxo.com http%3A%2F%2Fwww.cadaxo.com
  • 9. insert – Einfügefunktion • Einfügen einer Zeichenkette an beliebiger Stelle einer anderen Zeichenkette L_string = ‘NewsABAP‘. L_result = insert( val = l_string sub = ‘ in ‘ off = 5 ). Write: l_string. Ergebnis: News in ABAP
  • 10. match – Abgleichfunktion • Durchsucht einen Text nach einer bestimmten Regex- Übereinstimmung • Weitere Informationen zu Regex sind der SAP Online Dokumentation zu entnehmen
  • 11. repeat – Wiederholfunktion • Erzeugt eine Zeichenkette durch Wiederholung einer anderen Zeichenkette l_string = repeat( val = ‘ABC‘ occ = 5 ). write: l_string. Ergebnis: ABCABCABCABCABC
  • 12. replace – Ersetzungsfunktion • Ersetzt einen Teilbereich einer Zeichenkette • Teilbereich kann über Offset-/Längen oder Regex festgelegt werden. l_result = replace( val = 'ABAP xx GOOD' off = 6 len = 0 with = 'IS' ). Ergebnis: ‘ABAP xISx GOOD‘ l_result = replace( val = 'ABAP xx GOOD' off = 4 len = 4 with = 'IS' ). Ergebnis: ‘ABAPISGOOD‘
  • 13. reverse – Umdrehfunktion • Umdrehen einer kompletten Zeichenkette L_string = ‘PABA‘. L_string = reverse( l_string ). Ergebnis: ABAP PS: Wenn jemand eine sinnvolle Verwendung für diese Funktion findet, bitte um Info!
  • 14. substring, substring_... – Teilfeldfunktion • Ermittlung eines Teilfeldes aus einer gegebenen Zeichenmenge l_result = substring( val = 'ABCDEFGH' off = 3 len = 4 ). Ergebnis: ‘DEFG‘ l_result = substring_from( val = 'ABCDEFGH' sub = 'DEF' ). Ergebnis: ‘DEFGH‘ l_result = substring_after( val = 'ABCDEFGH' sub = 'DEF' ). Ergebnis: ‘GH‘ l_result = substring_before( val = 'ABCDEFGH' sub = 'DEF' ). Ergebnis: ‘ABC‘ l_result = substring_to( val = 'ABCDEFGH' sub = 'DEF' ). Ergebnis: ‘ABCDEF‘
  • 15. to_upper, to_lower, to_mixed, from_mixed Groß-/Kleinschreibungsfunktionen • to_upper/to_lower entspricht dem Kommando TRANSLATE TO UPPER/LOWER CASE • to_mixed setzt alle Buchstaben ab der 2. Stelle auf Kleinbuchstaben um • from_mixed fügt von links nach rechts ab der 2. Position das erste im Zusatz sep angegebene Zeichen ein • Weitere Zusätze sind case und min
  • 16. to_upper, to_lower, to_mixed, from_mixed Groß-/Kleinschreibungsfunktionen l_result = to_mixed( val = 'CADAXO GMBH' ). Ergebnis: ‘Cadaxo gmbh‘
  • 17. distance - Ähnlichkeitsfunktion • Ermittelt den Editierabstand (Levenshtein-Distanz) zweier Zeichenketten • Minimale Anzahl von Einfüge-, Lösch- oder Ersetzungsvorgängen um von Zeichenkette 1 auf Zeichenkette 2 zu kommen. l_int = distance( val1 = 'CADAXO GMBH' val2 = 'ADAXOGMBH' ). Ergebnis: 2 (Ein „C“ und ein Leerzeichen müssen eingefügt werden) l_int = distance( val1 = 'ABCD' val2 = 'EFGH' ). Ergebnis: 4 (Alle Zeichen müssen ausgetauscht werden) http://de.wikipedia.org/wiki/Levenshtein-Distanz
  • 18. Die Vervielfältigung bzw. Übersetzung dieses Dokumentes oder Teilen daraus ist ohne ausdrückliche Genehmigung durch die Cadaxo GmbH nicht zulässig. SAP®, ABAP™, R/3®, SAP NetWeaver® sind Marken oder eingetragene Marken der SAP AG. Alle anderen Produkte sind Marken oder eingetragene Marken der jeweiligen Firmen. © 2013 Cadaxo GesmbH. Alle Rechte vorbehalten.