gpt4 book ai didi

java - 如何在黑莓 ({m,n}) 上使用量词正则表达式模式

转载 作者:行者123 更新时间:2023-12-02 05:43:20 25 4
gpt4 key购买 nike

嗨,我尝试使用 regexp-me lib 编写验证类,因为这个 post 的答案。

我做了什么

String id = "123456789";

String pattern = "\\d{7,8}";

public boolean validate(String id,String pattern){


RE regular_expresion = new RE("\\d{7,8}");

return regular_expresion.match(id);
}

此代码应该使用该“id”返回 false,因为该模式只应接受 7 到 8 位数字。但是,如果我使用 id = "1234567"它返回 true ,则代码接受 7 个或更多数字。

{m,n} 用作 {n,}。

以前有人遇到过这个问题吗?

最佳答案

表达式\\d{7,8}表示:

  • 查找字符串中的任意位置
  • 仅由数字组成的字符串
  • 至少 7 个字符,但不超过 8 个字符。

这对于 1234567 是正确的,因为这是一个 7 位数字的字符串,对于 123456789 也是如此,因为该字符串也包含一个 7 或 8 位数字的字符串。

将表达式更改为 ^\\d{7,8}$ 仅当整个字符串从头到尾仅由数字组成且字符串长度为 7 或8.

关于java - 如何在黑莓 ({m,n}) 上使用量词正则表达式模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24327970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com