Maison >Java >javaDidacticiel >Comment les expressions régulières peuvent-elles extraire des nombres d'une chaîne et les stocker sous forme de tableau d'entiers ?
Extraire des nombres à partir de chaînes à l'aide d'expressions régulières
Problème :
Étant donné une chaîne contenant les deux texte et nombres, comment pouvons-nous extraire ces nombres et les stocker dans un tableau de entiers ?
Solution avec des expressions régulières :
Les expressions régulières (regex) peuvent être utilisées comme une méthode concise et efficace pour faire correspondre et extraire des modèles spécifiques à partir de chaînes. Voici comment nous pouvons utiliser l'expression régulière pour résoudre ce problème :
import java.util.regex.Pattern; import java.util.regex.Matcher; import java.util.LinkedList; String line = "There are more than -2 and less than 12 numbers here"; Pattern p = Pattern.compile("-?\d+"); Matcher m = p.matcher(line); LinkedList<String> numbers = new LinkedList<>(); while (m.find()) { numbers.add(m.group()); } // Convert the extracted strings to integers int[] intArray = new int[numbers.size()]; for (int i = 0; i < numbers.size(); i++) { intArray[i] = Integer.parseInt(numbers.get(i)); } System.out.println(intArray);
Dans cette solution :
Cette approche fournit une solution propre et réutilisable pour extraire des nombres à partir de chaînes de longueur et de complexité arbitraires.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!