Ciao a tutti,
vorrei che alla fine se scrivo per esempio charmander mi stampi solo la stringa dove si trova la parola charmander e invece mi stampa:

Sicuro?
Sicuro?
Nome: charmander
Pokedex: 04
Specie: Lucertola
Evoluzione: Charmeleon\Charizard

e quando invece scrivo qualcosa che non si trova in nessuna stringa dell'array mi restituisca 1 solo: Sicuro?
Invece che:
Sicuro?
Sicuro?
Sicuro?

Io so perche fa cosi perche lui cicla indipendentemente da quello che trova...come posso risolvere il problema?

Scusate la niubbagine...rimango a disposizione per le delucidazioni, vi ringrazio anticipatamente e vi allego il codice.

codice:
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Chiamata {


	public static void main(String[] args) {

		Scanner scan = new Scanner(System.in);
		System.out.println("Inserire il nome del pkm: ");
		String testocap = scan.nextLine();
		String testi = testocap.substring(0, 1).toLowerCase() + testocap.substring(1);

		String pikachu = "Nome: pikachu \nPokedex: 025 \nSpecie: Topo \nEvoluzione: Pichu";
		String squirtle = "Nome: squirtle \nPokedex: 02 \nSpecie: Scoiattolo \nEvoluzione: Wartholt\\Blastoise";
		String charmander = "Nome: charmander \nPokedex: 04 \nSpecie: Lucertola \nEvoluzione: Charmeleon\\Charizard";

		String[] array = new String [3];

		array[0] =  pikachu;
		array[1] =  squirtle;
		array[2] =  charmander;

		for (int i = 0; i < array.length; i++){

			boolean found = array[i].indexOf (testi) != -1;

			Pattern pattern = Pattern.compile("[a-z]+");
			Matcher matcher = pattern.matcher(testi); 

			if (found && matcher.matches()) {
				System.out.println(array[i]);

			}else{
				System.out.println("Sicuro?");
				
			}
		}
	}
}