Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 正则表达式-如果尾随字符为“则不匹配”-&引用;_Java_Regex - Fatal编程技术网

Java 正则表达式-如果尾随字符为“则不匹配”-&引用;

Java 正则表达式-如果尾随字符为“则不匹配”-&引用;,java,regex,Java,Regex,我有一个正则表达式,如下所示 ^Schedule\s?(A|B|C|D|E|F|H|J|K|L|M|R|SE)? 因此,这将匹配任何类似“计划A我需要帮助”的内容 我希望对字符“-”进行限制,即如果字符串类似于“Schedule a-我需要帮助”,则不应提供匹配项 但是,如果附表a后面跟的不是空格,而是“-”的话,那么它应该会给出一个匹配项。在这里,负面外观aheads会很有帮助 ^Schedule\s*([ABCDEFHJKLMR]|SE)(?!\s+-) (?!\s+-)负向前看,检查

我有一个正则表达式,如下所示

^Schedule\s?(A|B|C|D|E|F|H|J|K|L|M|R|SE)?
因此,这将匹配任何类似“计划A我需要帮助”的内容

我希望对字符“-”进行限制,即如果字符串类似于“Schedule a-我需要帮助”,则不应提供匹配项


但是,如果附表a后面跟的不是空格,而是“-”的话,那么它应该会给出一个匹配项。在这里,负面外观aheads会很有帮助

^Schedule\s*([ABCDEFHJKLMR]|SE)(?!\s+-)
  • (?!\s+-)
    负向前看,检查匹配字符串后面是否没有空格(
    \s+
    )和
    -

  • 注意不需要可选的量词
    ,因为它会导致正则表达式引擎跳过它们

  • [ABCDEFHJKLMR]
    字符类,匹配该类中的单个字符


你应该能够在结尾使用a:
(?!-)
a | B | C | D | E | F | H | J | K | L | M | R
可以重写为
[ABCDEFHJKLMR]