Processing Character Strings

Objective

After completing this lesson, you will be able to procesar cadenas de caracteres en un programa de aplicación

Funciones de cadena de caracteres

Procesar strings de caracteres

Procesando strings

El símbolo de barra vertical se puede utilizar para definir un modelo de string

Los modelos de string son expresiones ABAP del tipo de resultado string. Puede utilizar modelos de string en cualquier posición de operando de lectura, por ejemplo, la parte derecha de una valoración.

Un modelo de string empieza y termina con un símbolo de barra vertical ( | | ). La plantilla de cadena más simple posible no contiene más que texto literal. En este formulario, una plantilla de cadena no es realmente diferente de un literal de cadena.

Lo que distingue una plantilla de cadena de un literal de cadena es la capacidad de incrustar expresiones. Una expresión incrustada es una expresión ABAP rodeada por un par de corchetes ( { } ). En tiempo de ejecución, ABAP evalúa la expresión integrada y traduce el resultado en un string. En el resultado, esta cadena sustituye la expresión incrustada (junto con los corchetes circundantes).

Nota

La sintaxis ABAP requiere al menos un espacio en blanco después del paréntesis de apertura y al menos un espacio en blanco antes del paréntesis de cierre.

Una plantilla de cadena puede contener más de una expresión incrustada.

Dentro de los corchetes puede colocar cualquier tipo de expresión ABAP: variables, literales o expresiones aritméticas.

Ejemplos de uso de modelos de string

Cadena de unión

El operador && se puede utilizar para concatenar cadenas

Puede unir campos con el operador de concatenación &&. Puede unir cualquier combinación de objetos de datos y expresiones de cadena.

Las variables anteriores (Parte 1 y Parte 2) de la expresión se unen sin espacio u otro separador entre ellas. Si necesita espacios u otro separador o carácter, debe recordar insertarlo usted mismo como parte de la expresión, como se muestra en la figura anterior.

Utilizando el ejemplo de string, es posible que los usuarios deseen dividir su nombre completo para que pueda emitir solo el nombre.

La palabra clave SPLIT se puede utilizar para dividir una cadena en un carácter determinado en varias subcadenas

Procesar strings de caracteres

Ejemplo empresarial

Tiene el nombre completo de un cliente, pero debe visualizar el nombre. Cree el código ABAP para dividir el nombre completo en nombre y apellido y emita el nombre en la consola.

Nota

En este ejercicio XX hace referencia a su número.

Pasos

  1. Cree la clase ZCL_S4D100_XX_COND para ZCL_S4D100_XX_CASE.

    1. Despliegue CLASS ZLCOAL en el Explorador de proyectos.

    2. Haga clic con el botón derecho en el paquete ZS4D100_XX y seleccione Nuevaclase ABAP.

    3. En Nombre, introduzca ZCL_S4D100_XX_CHAR.

    4. En Descripción: introduzca Cadena de caracteres.

    5. Seleccione Añadir para añadir la interfaz IF_OO_ADT_CLASSRUN.

    6. Seleccione OK.

    7. Seleccione Siguiente.

    8. Seleccione su orden de transporte y pulse Finalizar.

    9. Pulse Activar (Ctrl+F3).

  2. Modifique el código en if_oo_adt_classrun~main para utilizar una sentencia CASE en lugar de una sentencia IF para verificar si c_number0 es inicial o no.

    1. Implemente el MÉTODO IF_OO_ADT_CLASSRUN~MAIN. con el siguiente código:

      Code Snippet
      1234567
      DATA: lv_full_name TYPE string VALUE 'Stan Wilson', lv_first_name TYPE string, lv_last_name TYPE string. SPLIT lv_full_name AT '' INTO lv_first_name lv_last_name. out->write( |user { lv_first_name }| ).
  3. Active y pruebe el programa.

    1. Pulse Activar (Ctrl+F3).

    2. Pulse F9 para ejecutar la clase.

    Practicar