MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 31/07/13, 15:13:36
Avatar de MetalGod
MetalGod MetalGod is offline
Senior Member
 
Fecha de Ingreso: jun 2012
Localización: Tandil - Argentina
Mensajes: 110
Cadena de caracteres

Buenas, como están?

mi consulta es sobre cadenas de caracteres:

Tengo una variable de tipo string, con una frase y quiero poder reemplazar una letra por otra, esta letra a reemplazar se encuentra en el medio, como puedo hacer? el tipo string no me permite una asignación desplazándome hasta el caracter en cuestión y la sentencia REPLACE solo me reemplaza la primer ocurrencia, no me permite posicionarme

DATA:
cad TYPE string VALUE 'SOY UNO CADENA'.


"""""""""""" cad+6(1) = 'A'. ( no me lo permite hacer por se un tipo string y no """""""""""" permite la asignación

"""""""""""" REPLACE 'O' WITH 'A' INTO cad. (me reemplaza solo la primer """""""""""" ocurrencia de 'O'

De la única manera que pude usar la asignación con desplazamiento es declarar la variable de tipo c, pero no me sirve, tiene que ser un string, tiene que poder hacerse.

Agradezco su ayuda, saludos
Responder Con Cita
  #2  
Viejo 31/07/13, 17:16:04
joau_fedipe joau_fedipe is offline
Member
 
Fecha de Ingreso: oct 2006
Mensajes: 79
Smile

Amigo,

se me ocurre que puedes hacer lo siguiente :
REPLACE 'UNO' WITH 'UNA' INTO cad.

o también:

DATA: kdn(200) TYPE c. "puede ser 200, 300 o lo más extensa posible

kdn = cad.
kdn+6(1) = 'A'.
cad = kdn.

Saludos
Responder Con Cita
  #3  
Viejo 31/07/13, 17:38:27
Avatar de MetalGod
MetalGod MetalGod is offline
Senior Member
 
Fecha de Ingreso: jun 2012
Localización: Tandil - Argentina
Mensajes: 110
muchas gracias por tu respuesta

La segunda opcion no la tuve en cuenta ya que quiero usar tipo string y no tipo c.

opte por la primera, pero con una variacion, use:

DATA:
cad TYPE string VALUE 'SOY UNO CADENA'.

REPLACE SECTION OFFSET 6 LENGTH 1 OF cad WITH 'A'.
Responder Con Cita
  #4  
Viejo 01/08/13, 17:08:05
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
Puedes utilizar REPLACE ALL OCURRENCES
Responder Con Cita
  #5  
Viejo 01/08/13, 17:10:43
Avatar de MetalGod
MetalGod MetalGod is offline
Senior Member
 
Fecha de Ingreso: jun 2012
Localización: Tandil - Argentina
Mensajes: 110
pero esta mal lo que decis, porque eso me reemplazaria todas las ocurrencias, la misma sentencia lo dice (all ocurrences) y solo quiero reemplazar una en especifico

puse cual solucion encontre, igual gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 17:29:55.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web