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

Mover todas las letras mayúsculas al final de una cadena usando Java RegEx

Subexpresión “ ”Coincidencia de todos los caracteres especificados entre paréntesis. Por lo tanto-

  • Recorrer todos los caracteres en la cadena dada.

  • Usar expresión regular “ [AZ] ”Coincidencia de todas las letras mayúsculas en la cadena dada.

  • Conecte los caracteres especiales y el resto de los caracteres a dos cadenas diferentes.

  • Finalmente, concatene la cadena de caracteres especiales con otra cadena.

Ejemplo1

public class RemovingSpecialCharacters {
   public static void main(String args[]) {
      String input = "texto de ejemplo B con caracteres LM en mayúscula entre G"
      String regex = "[A-Z]";
      String specialChars = "";
      String inputData = "";
      for(int i=0; i< input.length(); i++) {
         char ch = input.charAt(i);
         if(String.valueOf(ch).matches(regex)) {
            specialChars = specialChars + ch;
         } else {
            inputData = inputData + ch;
         }
      }
      System.out.println("Result: "+inputData+specialChars);
   }
}

Resultado de salida

Result: texto de muestra con caracteres en mayúscula entre BCGLM

Ejemplo2

A continuación se muestra un programa Java que utiliza los métodos del paquete Regex para mover las letras mayúsculas al final de una cadena.

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
   public static void main(String args[]) {
      String input = "texto de ejemplo B con caracteres LM en mayúscula entre G"
      String regex = "[A-Z]";
      String specialChars = "";
      System.out.println("Cadena de entrada: \n"+input);
      //Pattern pattern = Pattern.compile(regex);
      Crear un objeto de patrón
      //Coincidir con el patrón compilado en la cadena
      Matcher matcher = pattern.matcher(input);
      //Crear un área de memoria para cadenas vacía
      StringBuffer sb = new StringBuffer();
      while (matcher.find()) {
         specialChars = specialChars+matcher.group();
         matcher.appendReplacement(sb, "");
      }
      matcher.appendTail(sb);
      System.out.println("Resultado: \n"+ sb.toString()+specialChars );
   }
}

Resultado de salida

Cadena de entrada:
texto B de ejemplo C con caracteres LM en mayúscula entre G
Resultado:
texto de ejemplo con caracteres en mayúscula entre BCGLM
Te recomendamos