gpt4 book ai didi

java - 为什么我在使用 Pattern 类来识别字符串是否有效时出现错误?

转载 作者:行者123 更新时间:2023-12-01 18:16:25 25 4
gpt4 key购买 nike

package app;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class ValidIdentifierDemo
{
public static void main(String s[])
{
Pattern p=new Pattern.compile("[a-z A-z][a-z A-Z 0-9]+"); // error here
Matcher m=p.matcher("int"); //2 or s[0] in place of int?

if (m.find() && m.group().equals(s[0])) // 3 why s[0] shouldn't i use "int"
{
System.out.println("Valid");

}
else
{
System.out.println("InValid");

}
}
}

为什么我应该在//2//3 中使用s[0]

显示输出

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
at app.ValidIdentifierDemo.main(ValidIdentifierDemo.java:11)

最佳答案

你必须做:

Pattern p = Pattern.compile("[a-z A-z][a-z A-Z 0-9]+");

即删除 new 关键字,因为 .compile() 方法将为您生成一个Pattern

关于java - 为什么我在使用 Pattern 类来识别字符串是否有效时出现错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29259353/

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