Analizar una cadena en Java
-
Utilice el método
split
para analizar una cadena en Java -
Utilice
Scanner
para analizar una cadena en Java -
Utilice
StringUtils
para analizar una cadena en Java
Este tutorial explica cómo analizar una cadena en Java utilizando varios métodos. El análisis es el proceso de tomar una cadena y procesarla para extraer información.
Utilice el método split
para analizar una cadena en Java
El método split()
de la clase String
funciona dividiendo la cadena fuente manteniendo la cadena original sin modificar, y devuelve un array de subcadenas de la cadena original. Este método tiene dos variantes.
El método split(String regex)
toma una expresión regular de tipo string como argumento y divide la cadena alrededor de las coincidencias de la expresión regular. Si la expresión regular no coincide con ninguna parte de la cadena original, devuelve un array con un elemento: la cadena fuente.
El método split(String regex, int limit)
funciona igual pero toma limit
, lo que significa cuántas cadenas se devolverán. Si el límite es negativo, el array devuelta puede contener tantas subcadenas como sea posible cuando el límite es 0. El array contendría todas las subcadenas, excluyendo las cadenas vacías finales.
public class StringTest {
public static void main(String args[]) {
String source1 = "March032021";
String[] returnedArray1 = source1.split("\\d+");
for (String str1 : returnedArray1) {
System.out.println(" Output1 : " + str1);
}
String source2 = "950-003-123-900-456 : 11 _343-1 789----";
String[] returnedArray2 = source2.split("-", 4);
for (String str2 : returnedArray2) {
System.out.println(" Output2 : " + str2);
}
}
}
Producción :
Output1 : March
Output2 : 705
Output2 : 103
Output2 : 102
Output2 : 456-123 : 112 _343-1 789----
Utilice Scanner
para analizar una cadena en Java
Scanner
se usa generalmente para analizar tipos primitivos y cadenas usando una expresión regular. Divide la entrada en tokens utilizando un patrón delimitador que es un espacio en blanco coincidente por defecto.
Creamos un Scanner
con un objeto de cadena especificado. El método useDelimiter()
de la clase Scanner
se utiliza para establecer el patrón delimitador. Podemos pasar un objeto Patrón
o una cadena como patrón. Para obtener todos los tokens de la cadena, recorremos los tokens usando el método hasNext()
e imprimimos el resultado.
import java.util.Scanner;
public class StringTest {
public static void main(String args[]) {
String text = "John Evans was born on 25-08-1980";
Scanner scanner = new Scanner(text);
scanner.useDelimiter("born");
while (scanner.hasNext()) {
System.out.println("Output is : " + scanner.next());
}
}
}
Producción :
Output is : John Evans was
Output is : on 25-08-1980
Utilice StringUtils
para analizar una cadena en Java
La clase StringUtils
de Apache Commons proporciona herramientas que facilitan el trabajo con Strings. La dependencia de maven para agregar esta biblioteca se proporciona a continuación.
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.11</version>
</dependency>
Usamos el método substringBetween(String str, String open, String close)
de la clase StringUtils
para analizar una cadena dada. Este método extrae una subcadena anidada entre dos cadenas.
import org.apache.commons.lang3.StringUtils;
public class StringTest {
public static void main(String args[]) {
String source = "The crazy brown dog jumps over the fence";
String[] stringArray = StringUtils.substringsBetween(source, "crazy", "over");
for (String s : stringArray) {
System.out.println("Output : " + s);
}
}
}
Producción :
Output : brown dog jumps
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn