English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Clase de caracteres Posix\ p {ASCII} Coincide con los caracteres ASCII, mientras que el carácter de metasímbolo ^ se utiliza como negativo.
Es decir, la siguiente expresión coincide con todos los caracteres no ASCII.
"[^\\p{ASCII}]"
replaceAll()
El método de la clase String acepta una expresión regular y una cadena de reemplazo, y reemplaza los caracteres de la cadena actual con la cadena de reemplazo especificada (coincidentes con el patrón dado).
Por lo tanto, puede usarreplaceAll()
El método elimina los caracteres coincidentes reemplazándolos con la cadena vacía "".
import java.util.Scanner; public class Exp {}} public static void main(String args[]) { Scanner sc = new Scanner(System.in); String regex = "[^\\p{ASCII}]"; System.out.println("Ingrese los datos de entrada:"); String input = sc.nextLine(); String result = input.replaceAll(regex, ""); System.out.println("Resultado: "+result); } }
Resultado de salida
Ingrese los datos de entrada: ¿Por qué nos caemos? Resultado: ¿Por qué nos caemos?
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Example { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("Ingrese la cadena de entrada:"); String input = sc.nextLine(); String regex = "[^\\p{ASCII}]"; //Crear un objeto de patrón Pattern pattern = Pattern.compile(regex); //Coincidir con el patrón compilado en la cadena Matcher matcher = pattern.matcher(input); //Crear un área de memoria de cadena vacía StringBuffer sb = new StringBuffer(); while (matcher.find()) { matcher.appendReplacement(sb, ""); } matcher.appendTail(sb); System.out.println("Resultado: \n");+ sb.toString()); } }
Resultado de salida
Ingrese la cadena de entrada: ¿Por qué nos caemos? Resultado: ¿Por qué nos caemos?