Come faccio a vedere se una stringa esiste all'interno di un'altra stringa in Java 1.4?

StackOverflow https://stackoverflow.com/questions/687577

  •  22-08-2019
  •  | 
  •  

Domanda

Come faccio a sapere se la stringa "template" (per esempio) esiste all'interno di un oggetto String?

Sarebbe bello se non fosse stato un controllo di maiuscole e minuscole.

È stato utile?

Soluzione

Utilizzare un'espressione regolare e segnare come case insensitive:

if (myStr.matches("(?i).*template.*")) {
  // whatever
}

Il (? I) si accende caso insensibilità e la . * a ciascuna estremità della partita termine di ricerca qualsiasi carattere circostanti (dal String.matches funziona su l'intera stringa).

Altri suggerimenti

String.indexOf (String)

Per un caso di ricerca insensibile, a toUpperCase o toLowerCase sia la stringa originale e la sottostringa prima della indexOf

String full = "my template string";
String sub = "Template";
boolean fullContainsSub = full.toUpperCase().indexOf(sub.toUpperCase()) != -1;

È possibile utilizzare indexOf () e toLowerCase () per fare i test case-insensitive per stringhe.

String string = "testword";
boolean containsTemplate = (string.toLowerCase().indexOf("template") >= 0);
String word = "cat";
String text = "The cat is on the table";
Boolean found;

found = text.contains(word);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top