ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 题目 – 检查字符串是否完整(包含所有字母) > 原文: [https://howtodoinjava.com/puzzles/puzzle-check-if-string-is-complete-contains-all-alphabets/](https://howtodoinjava.com/puzzles/puzzle-check-if-string-is-complete-contains-all-alphabets/) 如果字符串包含从 a 到 z 的所有字符,则认为该字符串是完整的。 给定一个字符串,检查它是否完整。 例如: **示例输入** ```java 3 wyyga qwertyuioplkjhgfdsazxcvbnm ejuxggfsts ``` **示例输出** ```java NO YES NO ``` ## 使用`for`循环和`indexOf()`的解决方案 我写了一个简单的函数,可以找到这个完整的字符串。 ```java package com.howtodoinjava.examples; public class CheckAllAlphabetsAlgorithms { public static void main(String[] args) { System.out.println( checkAllChars( "qwertyuioplkjhgfdsAzxcvbnm" ) ); System.out.println( checkAllChars( "123" ) ); System.out.println( checkAllChars( "ejuxggfsts" ) ); System.out.println( checkAllChars( "wyyga" ) ); } private static String checkAllChars ( String input ) { //If input length is less than 26 then it can never be complete if(input.length() < 26) { return "FALSE"; } for (char ch = 'A'; ch <= 'Z'; ch++) { if (input.indexOf(ch) < 0 && input.indexOf((char) (ch + 32)) < 0) { return "FALSE"; } } return "TRUE"; } } ``` **输出**: ```java TRUE FALSE FALSE FALSE ``` ## 用于正则表达式的解决方案 这是一个使用正则表达式查找完整字符串的解决方案(很丑,因为我不喜欢长的正则表达式)。 ```java package com.howtodoinjava.examples; public class CheckAllAlphabetsAlgorithms { public static void main(String[] args) { System.out.println( checkAllCharsUsingRegex( "qwertyuioplkjhgfdsAzxcvbnm" ) ); System.out.println( checkAllCharsUsingRegex( "123" ) ); System.out.println( checkAllCharsUsingRegex( "ejuxggfsts" ) ); System.out.println( checkAllCharsUsingRegex( "wyyga" ) ); } private static String checkAllCharsUsingRegex ( String input ) { //If input length is less than 26 then it can never be complete if(input.length() < 26) { return "FALSE"; } String regex = "(?i)(?=.*a)(?=.*b)(?=.*c)(?=.*d)(?=.*e)(?=.*f)" + "(?=.*g)(?=.*h)(?=.*i)(?=.*j)(?=.*k)(?=.*l)(?=.*m)(?=.*n)" + "(?=.*o)(?=.*p)(?=.*q)(?=.*r)(?=.*s)(?=.*t)(?=.*u)(?=.*v)" + "(?=.*w)(?=.*x)(?=.*y)(?=.*z).*"; if(input.matches(regex)){ return "TRUE"; } return "FALSE"; } } ``` **输出**: ```java TRUE FALSE FALSE FALSE ``` **祝您学习愉快!**