当前位置: 首页 > 编程笔记 >

Java中的正则表达式\ Q元字符

薄高懿
2023-03-14
本文向大家介绍Java中的正则表达式\ Q元字符,包括了Java中的正则表达式\ Q元字符的使用技巧和注意事项,需要的朋友参考一下

子表达式/元字符“ \ Q”会转义所有字符,直到“ \ E”为止;即,您可以通过将正则表达式中的元字符放在\ Q和\ E之间来转义。例如,表达式[aeiou]匹配其中带有元音字母的字符串。

例 

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class SampleProgram {
   public static void main( String args[] ) {
      String regex = "[aeiou]";
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter input string: ");
      String input = sc.nextLine();
      //创建一个Pattern对象
      Pattern pattern = Pattern.compile(regex);
      Matcher matcher = pattern.matcher(input);
      if(matcher.find()) {
         System.out.println("Match occurred");
      } else {
         System.out.println("Match not occurred");
      }
   }
}

输出结果

Enter input string:
sample
Match occurred

但是,如果您在\ Q和\ E中使用与\ Q [aeiou] \ E相同的表达式,则它将与给定字符串中的字符“ [aeiou]”相同序列。简而言之,元字符失去了意义,将被视为普通字符

示例

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class SampleProgram {
   public static void main( String args[] ) {
      String regex = "\\Q[aeiou]\\E";
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter input string: ");
      String input = sc.nextLine();
      //创建一个Pattern对象
      Pattern pattern = Pattern.compile(regex);
      Matcher matcher = pattern.matcher(input);
      if(matcher.find()) {
         System.out.println("Match occurred");
      } else {
         System.out.println("Match not occurred");
      }
   }
}

输出1

Enter input string:
sample
Match not occurred

输出2

Enter input string:
The letters [aeiou] are vowels in English alphabet
Match occurred
 类似资料:
  • 本文向大家介绍Java中的正则表达式“ $”(美元)元字符,包括了Java中的正则表达式“ $”(美元)元字符的使用技巧和注意事项,需要的朋友参考一下 子表达式/元字符“ $ ”与行尾匹配。 例子1 输出结果 例子2 以下Java程序从用户接受5个字符串,并打印以数字结尾的字符串。 输出结果

  • 本文向大家介绍正则表达式 ”。” (点)Java中的元字符,包括了正则表达式 ”。” (点)Java中的元字符的使用技巧和注意事项,需要的朋友参考一下 子表达式/元字符“。” 匹配除换行符以外的任何单个字符。 例1 输出结果 例子2 以下Java程序从用户接受5个字符串,并输出以e结尾的四个字母的单词。 输出结果

  • 本文向大家介绍正则表达式“ [[X?+]””元字符Java,包括了正则表达式“ [[X?+]””元字符Java的使用技巧和注意事项,需要的朋友参考一下 可能量词[X?+]匹配一次存在的X或根本不存在的X。 示例 输出结果

  • 主要内容:实例下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或

  • 本文向大家介绍Java中的正则表达式“ ^”(脱字符)元字符,包括了Java中的正则表达式“ ^”(脱字符)元字符的使用技巧和注意事项,需要的朋友参考一下 子表达式/元字符“ ^”与行的开头匹配。如果在正则表达式中使用此命令,则它将与输入字符串中其后的句子匹配。 例子1 输出结果 例子2 以下Java程序从用户接受5个字符串,并打印以数字开头的字符串。 输出结果

  • 问题内容: 我正在尝试在另一个字符串中替换字符串“ []”的第一个匹配项: aString.replaceFirst(“ []”,“等等”); 我收到错误:java.util.regex.PatternSyntaxException:索引1 []附近的未封闭字符类 [和]显然是元字符,但是当我尝试使用\来转义它们时,eclipse抱怨说这不是有效的转义序列。 我看过但找不到,我想念什么? 谢谢 问