4D v16.3

Substring

Inicio

 
4D v16.3
Substring

Substring 


 

Substring ( fuente ; aPartirDe {; numCaracteres} ) -> Resultado 
Parámetro Tipo   Descripción
fuente  Cadena in Cadena de la cual obtener una subcadena
aPartirDe  Entero largo in Posición del primer carácter
numCaracteres  Entero largo in Número de caracteres a obtener
Resultado  Cadena in Subcadena de fuente

El comando Substring devuelve la parte de fuente definida por aPartirDe y numCars.

El parámetro aPartirDe indica el primer carácter de la cadena a devolver, y numCars define el número de caracteres a devolver.

Si aPartirDe más numCars es mayor que el número de caracteres en la cadena o si numCars no está especificado, Substring devuelve todos los caracteres de la cadena a partir del carácter especificado por aPartirDe. Si aPartirDe es superior al número de caracteres en la cadena, Substring devuelve una cadena vacía ("").

Atención: cuando se utiliza este comando en un contexto multi-estilo, debe convertir los eventuales caracteres de fin de línea Windows ('\r\n') en caracteres de fin de línea simples ('\r') para que el procesamiento sea válido. Esto se debe al mecanismo que normaliza los finales de línea 4D para asegurar la compatibilidad multi-plataforma para los textos. Para obtener más información, consulte Normalización automática de fines de líneas.

Este ejemplo ilustra la utilización de Substring. Los resultados se asignan a la variable vsResult.

 vsResult:=Substring("08/04/62";4;2) ` vsResult toma el valor "04"
 vsResult:=Substring("Emergencia";1;6) ` vsResult toma el valor "Emerge"
 vsResult:=Substring(var;2) ` vsResult toma el valor de todos los caracteres excepto el primero

El siguiente método de proyecto añade los párrafos que se encuentran en el texto (pasado como primer parámetro) a una array de tipo texto o alfa (cuyo puntero se pasa como segundo parámetro):

  ` EXTRACT PARAGRAPHS
  ` EXTRACT PARAGRAPHS ( texto ; Puntero )
  ` EXTRACT PARAGRAPHS ( Texto a analizar ; -> Array de párrafos )
 
 C_TEXT($1)
 C_POINTER($2)
 
 $vlElem:=Size of array($2->)
 Repeat
    $vlElem:=$vlElem+1
    INSERT IN ARRAY($2->;$vlElem)
    $vlPos:=Position(Char(Carriage return);$1)
    If($vlPos>0)
       $2->{$vlElem}:=Substring($1;1;$vlPos-1)
       $1:=Substring($1;$vlPos+1)
    Else
       $2->{$vlElem}:=$1
    End if
 Until($1="")



Ver también 

Position

 
PROPIEDADES 

Producto: 4D
Tema: Cadenas de caracteres
Número 12

This command can be run in preemptive processes

 
HISTORIA 

Creado por: < 4D v6

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)