Separar texto de un campo de un Tabla interna por un carcater

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • tate
    Senior Member
    • feb
    • 106

    #1

    Separar texto de un campo de un Tabla interna por un carcater

    Hola, tengo una tabla interna, en la cual, el ultimo campo es un texto largo.

    Me gustaria saber si hay alguna funcion o parametro para poder separarlo por algun caracter qye lleve el texto, como por ejemplo "/" o ",".

    Un saludo y gracias.
  • edu_alo_martinez
    Member
    • ago
    • 63

    #2
    Concatenar

    Hola,

    Puedes usar la funcion de concatenar.

    Te dejo un ejemplo:

    DATA: c1(10) TYPE c VALUE 'Sum',
    c2(3) TYPE c VALUE 'mer',
    c3(5) TYPE c VALUE 'holi ',
    c4(10) TYPE c VALUE 'day',
    c1 (30) TYPE c,
    sep(3) TYPE c VALUE ' - '.

    CONCATENATE c1 c2 c3 c4 INTO c5.
    WRITE c5.

    CONCATENATE c1 c2 c3 c4 INTO c5 SEPARATED BY sep.

    WRITE / c5.

    La salida seria algo asi:

    Summerholiday

    Sum - mer - holi - day


    Si miras en el ejemplo dentro de la variable sep indicas el separador a utilizar.

    Espero sea lo que buscabas.
    Saludos,

    Comentario

    • tate
      Senior Member
      • feb
      • 106

      #3
      Antes de nada, gracias.

      No es lo que busco.

      Cuento.

      Me pasan un txt, en el cual me pasan el doc. pos. y texto.

      Lo guardo en una tabla interna, y despues ese texto lo inserto en la transaccion va42 en los textos.
      El problema que tengo esque me los mete seguidos:

      DAVID - JUAN - ANA

      Y me gustaria que saliera asi;

      DAVID
      JUAN
      ANA

      Si sirve de algo, para insertar el texto uso la funcion 'SAVE_TEXT'

      Comentario

      • gugutin
        Member
        • jul
        • 71

        #4
        Originalmente publicado por tate
        Antes de nada, gracias.

        No es lo que busco.

        Cuento.

        Me pasan un txt, en el cual me pasan el doc. pos. y texto.

        Lo guardo en una tabla interna, y despues ese texto lo inserto en la transaccion va42 en los textos.
        El problema que tengo esque me los mete seguidos:

        DAVID - JUAN - ANA

        Y me gustaria que saliera asi;

        DAVID
        JUAN
        ANA

        Si sirve de algo, para insertar el texto uso la funcion 'SAVE_TEXT'
        Hola tate,

        Te has mirado la ayuda de la instruccion split,
        DATA: str1 TYPE string,
        str2 TYPE string,
        str3 TYPE string,
        itab TYPE TABLE OF string,
        text TYPE string.

        text = `What a drag it is getting old`.

        SPLIT text AT space INTO: str1 str2 str3,
        TABLE itab.
        Espero que te sirva saludos.

        Comentario

        • DavidXD_XD
          Moderator
          • ago
          • 1255

          #5
          Holas, ... como nos comenta gugutin la solucion seria usar la sentencia SPLIT, pero tengo una duda ... las palabras de la cadena siempre estaran separadas x un guion??
          David Carballido Córdova

          Comentario

          Trabajando...