首页 > 解决方案 > Java 正则表达式如何匹配 _、/ 或 /123?

问题描述

我已经准备好这个正则表达式[_[/\\\d+]]来获得以下任何一个

或者

因此,当我尝试匹配以下结果时

  1. _(匹配 -> 确定)

  2. /(匹配 -> 确定)

  3. /123(不匹配 -> 不正常)

我在这里想念什么?

标签: javaregex

解决方案


您正在使用[并且]它表示将匹配任何一次列出的任何字符类。Using\d+将匹配一个数字或一个+字符。

如果您+向字符类本身添加量词,您将重复列出的任何内容,但您将没有 OR 逻辑。

您应该为 OR 部分使用管道,该管道|将匹配下划线或正斜杠后跟 1 位以上的数字。

要还匹配单个正斜杠,您可以使用*而不是匹配 0+ 位数字+

_|/\d+

正则表达式演示

注意在Java中双重转义反斜杠_|/\\d+


推荐阅读