Diferencia entre revisiones de «objeto.substring()»

De ArduWiki
Saltar a: navegación, buscar
(Referencias)
 
(No se muestran 8 ediciones intermedias de 2 usuarios)
Línea 1: Línea 1:
 
== Descripción ==
 
== Descripción ==
Extrae los caracteres entre dos posiciones.
+
Extrae una cadena de caracteres entre dos posiciones.
  
 
== Sintaxis ==
 
== Sintaxis ==
 
<pre>
 
<pre>
objeto.substring(desde[, hasta]);
+
objeto.substring(desde);
 +
objeto.substring(desde, hasta);
 
</pre>
 
</pre>
  
 
== Parámetros ==
 
== Parámetros ==
;objeto: instancia de la clase String.
+
;objeto: instancia de la clase [[String]].
;desde: Posición '''desde''' donde inicia la extracción de la subcadena.
+
;desde: Posición '''desde''' donde inicia la extracción de la subcadena ([[int]]).
;hasta: Posición  '''hasta''' donde concluye la extracción de la subcadena.
+
;hasta: Posición  '''hasta''' donde concluye la extracción de la subcadena ([[int]]). Si no se especifica, se irá hasta el final.
  
 
== Retorna ==
 
== Retorna ==
Subcadena entre las posiciones desde y hasta.
+
Subcadena entre las posiciones desde y hasta ([[String]]).
  
 
== Advertencias ==
 
== Advertencias ==
 
Nada.
 
Nada.
  
== Ejemplo ==
+
== Ejemplo 1 ==
 
<syntaxhighlight lang="c++">
 
<syntaxhighlight lang="c++">
 
String frase = "Apundes de Arduino";
 
String frase = "Apundes de Arduino";
 
frase.substring(10);    //Arduino
 
frase.substring(10);    //Arduino
 
frase.substring(10,14);  //Ardu
 
frase.substring(10,14);  //Ardu
 +
</syntaxhighlight>
 +
 +
== Ejemplo 2 ==
 +
En este ejemplo ponemos en e monitor serie algo como: 123,456,789 y obtendremos 456.00 el numero entre las , en [[float]]
 +
 +
<syntaxhighlight lang="c++">
 +
void setup() {
 +
  Serial.begin(9600);
 +
}
 +
 +
void loop() {
 +
  String num = "";
 +
  while (Serial.available()){
 +
      char c = Serial.read();
 +
      num = num + c;
 +
      delay(10);
 +
  }
 +
  if (num != ""){
 +
      byte pos1 = num.indexOf(",") +1;
 +
      byte pos2 = num.indexOf(",",pos1);
 +
      float n = num.substring(pos1,pos2).toFloat();
 +
      Serial.println(n);
 +
  }
 +
}
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== Vea también ==
 
== Vea también ==
* [[String]]
+
<categorytree mode=all>String</categorytree>
  
 
== Referencias ==
 
== Referencias ==
 
* [https://www.arduino.cc/reference/es/language/functions/time/millis/ Guia de referencia de Arduino]
 
* [https://www.arduino.cc/reference/es/language/functions/time/millis/ Guia de referencia de Arduino]
  
[[Category:Funciones]]
+
[[Category:String]]

Revisión actual del 14:05 6 may 2019

Descripción

Extrae una cadena de caracteres entre dos posiciones.

Sintaxis

objeto.substring(desde);
objeto.substring(desde, hasta);

Parámetros

objeto
instancia de la clase String.
desde
Posición desde donde inicia la extracción de la subcadena (int).
hasta
Posición hasta donde concluye la extracción de la subcadena (int). Si no se especifica, se irá hasta el final.

Retorna

Subcadena entre las posiciones desde y hasta (String).

Advertencias

Nada.

Ejemplo 1

String frase = "Apundes de Arduino";
frase.substring(10);     //Arduino
frase.substring(10,14);  //Ardu

Ejemplo 2

En este ejemplo ponemos en e monitor serie algo como: 123,456,789 y obtendremos 456.00 el numero entre las , en float

void setup() {
   Serial.begin(9600);
}

void loop() {
   String num = "";
   while (Serial.available()){
      char c = Serial.read();
      num = num + c;
      delay(10);
   }
   if (num != ""){
      byte pos1 = num.indexOf(",") +1;
      byte pos2 = num.indexOf(",",pos1);
      float n = num.substring(pos1,pos2).toFloat();
      Serial.println(n);
   }
}

Vea también


Referencias