English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

¿Cómo extraer números de una cadena usando expresiones regulares?

Puede usar una de las siguientes expresiones regulares para coincidir los números en la cadena dada-

"\\d+"
Oro,
"([0-9]+)

ejemplo1

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ExtractingDigits {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Ingrese texto de ejemplo: ");
      String data = sc.nextLine();
      //Expresión regular para coincidir con números en la cadena
      String regex = "\\d+)";
      //Crear un objeto patrón
      Pattern pattern = Pattern.compile(regex);
      //Crear un objeto Matcher
      Matcher matcher = pattern.matcher(data);
      System.out.println("Los dígitos en la cadena dada son: ");
      while(matcher.find()) {
         System.out.print(matcher.group())+"");
      }
   }
}

Resultado de salida

Ingrese texto de ejemplo:
esto es un ejemplo 23 texto 46 con 11223 números en él
Los dígitos en la cadena dada son:
23 46 11223

ejemplo2

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Just {
   public static void main(String[] args) {
      String data = "abc12def334hjdsk7438dbds3y388)";
      //Expresión regular a número
      String regex = "([0-9]+)";
      //Crear un objeto patrón
      Pattern pattern = Pattern.compile(regex);
      //Crear un objeto Matcher
      Matcher matcher = pattern.matcher(data);
      System.out.println("Los dígitos en la cadena dada son: ");
      while(matcher.find()) {
         System.out.print(matcher.group())+"");
      }
   }
}

Resultado de salida

Los dígitos en la cadena dada son:
12 334 7438 3 388
Te gustará