正则表达式 - 数字的单个字符前缀

时间:2018-01-04 12:15:21

标签: java regex regex-lookarounds

我有点努力获得正则表达式。 这种情况。

有效案例

  1. F33434343

  2. 123243434333

  3. 无效案例

    1. ABC23232

    2. C2242422342

    3. 表示只有F可以是前缀,否则只能是数字。

      我试过^([F]|[0-9]+)$这个,但它没有帮助。请提出一些想法或解决方案。提前致谢

1 个答案:

答案 0 :(得分:2)

在匹配1个或多个数字之前,您可以选择F

^F?[0-9]+$

请参阅regex demo

<强>详情

  • ^ - 字符串的开头(隐含在matches()
  • F? - 可选的F字符
  • [0-9]+ - 一位或多位
  • $ - 字符串锚点的结尾(隐含在matches()中)。

在Java中,如果您使用matches(),您甚至可以省略前导^和尾随$锚点:

s.matches("F?[0-9]+")