Las strings son un aspecto muy importante desde la perspectiva de la programación, ya que muchas preguntas se pueden enmarcar entre strings. Surgen conjuntos muy variados de conceptos y preguntas que son fundamentales para comprender las strings. Ahora, aquí discutiremos diferentes formas de jugar con strings donde jugaremos con caracteres con strings y substrings que forman parte de las strings de entrada con la ayuda de métodos incorporados y también proponiendo una lista lógica de formas muy variadas de la siguiente manera:
Búsqueda de un carácter en la string
Vía 1: indexOf(char c)
Busca el índice de caracteres especificados dentro de una string dada. Comienza a buscar desde el principio hasta el final de la string (de izquierda a derecha) y devuelve el índice correspondiente si lo encuentra; de lo contrario, devuelve -1.
Nota: si la string dada contiene varias apariciones de un carácter específico, devuelve el índice de la única primera aparición del carácter especificado.
Sintaxis:
int indexOf(char c) // Accepts character as argument, Returns index of // the first occurrence of specified character
Vía 2: lastIndexOf(char c)
Comienza a buscar hacia atrás desde el final de la string y devuelve el índice de los caracteres especificados cada vez que los encuentra.
Sintaxis:
public int lastIndexOf(char c) // Accepts character as argument, Returns an // index of the last occurrence specified // character
Forma 3: indexOf(char c, int indexFrom)
Comienza a buscar hacia adelante desde el índice especificado en la string y devuelve el índice correspondiente cuando se encuentra el carácter especificado; de lo contrario, devuelve -1.
Nota: El índice devuelto debe ser mayor o igual que el índice especificado.
Sintaxis:
public int IndexOf(char c, int indexFrom)
Parámetros:
- El personaje a buscar
- Un entero desde donde busca
Tipo de devolución: un índice de un carácter específico que apareció en o después del índice especificado en una dirección de reenvío.
Vía 4: lastIndexOf(char c, int fromIndex)
Comienza a buscar hacia atrás desde el índice especificado en la string. Y devuelve el índice correspondiente cuando se encuentra el carácter especificado; de lo contrario, devuelve -1.
Nota: El índice devuelto debe ser menor o igual que el índice especificado.
Sintaxis:
public int lastIndexOf(char c, int fromIndex)
Vía 5: charAt(int indexNumber)
Devuelve el carácter existente en el índice especificado, indexNumber en la string dada. Si el número de índice especificado no existe en la string, el método genera una excepción no verificada, StringIndexOutOfBoundsException.
Sintaxis:
char charAt(int indexNumber)
Ejemplo:
Java
// Java Program to Illustrate to Find a Character // in the String // Importing required classes import java.io.*; // Main class class GFG { // Main driver method public static void main(String[] args) { // String in which a character to be searched. String str = "GeeksforGeeks is a computer science portal"; // Returns index of first occurrence of character. int firstIndex = str.indexOf('s'); System.out.println("First occurrence of char 's'" + " is found at : " + firstIndex); // Returns index of last occurrence specified // character. int lastIndex = str.lastIndexOf('s'); System.out.println("Last occurrence of char 's' is" + " found at : " + lastIndex); // Index of the first occurrence of specified char // after the specified index if found. int first_in = str.indexOf('s', 10); System.out.println("First occurrence of char 's'" + " after index 10 : " + first_in); int last_in = str.lastIndexOf('s', 20); System.out.println("Last occurrence of char 's'" + " after index 20 is : " + last_in); // gives ASCII value of character at location 20 int char_at = str.charAt(20); System.out.println("Character at location 20: " + char_at); // Note: If we uncomment it will throw // StringIndexOutOfBoundsException // char_at = str.charAt(50); } }
First occurrence of char 's' is found at : 4 Last occurrence of char 's' is found at : 28 First occurrence of char 's' after index 10 : 12 Last occurrence of char 's' after index 20 is : 15 Character at location 20: 111
Forma 6: Buscar substring en la string
Los métodos utilizados para buscar un carácter en la string que se mencionan anteriormente también se pueden usar para buscar la substring en la string.
Ejemplo
Java
// Java Program to illustrate to Find a Substring // in the String // Importing required classes import java.io.*; // Main class class GFG { // Main driver method public static void main(String[] args) { // A string in which a substring // is to be searched String str = "GeeksforGeeks is a computer science portal"; // Returns index of first occurrence of substring int firstIndex = str.indexOf("Geeks"); System.out.println("First occurrence of char Geeks" + " is found at : " + firstIndex); // Returns index of last occurrence int lastIndex = str.lastIndexOf("Geeks"); System.out.println( "Last occurrence of char Geeks is" + " found at : " + lastIndex); // Index of the first occurrence // after the specified index if found int first_in = str.indexOf("Geeks", 10); System.out.println("First occurrence of char Geeks" + " after index 10 : " + first_in); int last_in = str.lastIndexOf("Geeks", 20); System.out.println("Last occurrence of char Geeks " + "after index 20 is : " + last_in); } }
First occurrence of char Geeks is found at : 0 Last occurrence of char Geeks is found at : 8 First occurrence of char Geeks after index 10 : -1 Last occurrence of char Geeks after index 20 is : 8
Vía 7: contiene (CharSequence seq): devuelve verdadero si la string contiene la secuencia especificada de valores de caracteres; de lo contrario, devuelve falso. Sus parámetros especifican la secuencia de caracteres a buscar y lanzan NullPointerException si seq es nulo.
Sintaxis:
public boolean contains(CharSequence seq)
Nota: CharSequence es una interfaz implementada por la clase String, por lo tanto, usamos string como argumento en el método contains().
Ejemplo
Java
// Java Program to Illustrate How to Find a Substring // in the String using contains() Method // Importing required classes import java.io.*; import java.lang.*; // Class class GFG { // Main driver method public static void main(String[] args) { // String in which substring // to be searched String test = "software"; CharSequence seq = "soft"; boolean bool = test.contains(seq); System.out.println("Found soft?: " + bool); // Returns true substring if found. boolean seqFound = test.contains("war"); System.out.println("Found war? " + seqFound); // Returns true substring if found // otherwise return false boolean sqFound = test.contains("wr"); System.out.println("Found wr?: " + sqFound); } }
Found soft?: true Found war? true Found wr?: false
Vía 8: Coincidencia de inicio y final de string
- boolean comienza con (String str): devuelve verdadero si la string str existe al comienzo de la string dada, de lo contrario, es falso.
- boolean comienza con (String str, int indexNum): devuelve verdadero si la string str existe al comienzo del índice indexNum en la string dada, de lo contrario, false.
- booleano termina con (String str): devuelve verdadero si la string str existe al final de la string dada, de lo contrario, es falso.
Ejemplo:
Java
// Java Program to Match ofstart and endof a Substring // Importing required classes import java.io.*; // Main class class GFG { // Main driver method public static void main(String[] args) { // Input string in which substring // is to be searched String str = "GeeksforGeeks is a computer science portal"; // Print and display commands System.out.println(str.startsWith("Geek")); System.out.println(str.startsWith("is", 14)); System.out.println(str.endsWith("port")); } }
true true false
Este artículo es una contribución de Nitsdheerendra . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA