gpt4 book ai didi

java - 在模式匹配器中使用变量

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:14:28 24 4
gpt4 key购买 nike

我有以下内容:

if (mobile.matches("[0-9]{6,20}")) {
...
}

但我想用变量值替换 {6,20},因为它们在某些情况下是动态的。

int minValue = 11;
int maxValue = 20

if (mobile.matches("[0-9]{minValue,maxValue}")) {
...
}

如何在 Reg Exp 中包含变量?

谢谢

最佳答案

使用 Java 的简单字符串连接,使用加号。

if (mobile.matches("[0-9]{" + minValue + "," + maxValue + "}")) {

确实,正如 Michael 所建议的那样,如果您经常使用它,编译它会提高性能。

Pattern pattern = Pattern.compile("[0-9]{" + minValue + "," + maxValue + "}");

然后在需要的时候像这样使用它:

Matcher m = pattern.matcher(mobile);
if (m.matches()) {

关于java - 在模式匹配器中使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10317603/

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