我非常新于编程,但被告知现在应该避免使用正则表达式,但我发现它非常有帮助。
当编写一个程序来检查字符串是否仅包含字母时,我在stackoverlow上发现
以下是我使用它的示例:
当编写一个程序来检查字符串是否仅包含字母时,我在stackoverlow上发现
^[a-zA-Z]+$
和[a-zA-Z]*
都产生相同的结果。我理解[a-zA-Z]
的工作原理,并且我也了解[A-z]
与这两者不同,但我不理解+ $与^ [] *或为什么它们会产生相同的结果,我很难找到解释。以下是我使用它的示例:
String student = input.next();
while (!student.matches("[a-zA-Z]*")) {
System.out.print("Invalid input. Enter name: ");
student = input.next();
}
这是我在这里的第一个问题,如果这种问题不受欢迎,请原谅。
这个问题涉及到IT技术。
^
表示字符串的开头,$
表示字符串的结尾。它们被称为“锚点”。+
表示“一个或多个”,而*
表示“零个或多个”(是的,*
可以匹配零个字符)。 - gen_Eric[^a-zA-Z]
进行搜索即可。 - user557597