📌  相关文章
📜  使用Regex检查字符串在Java中是否仅包含字母

📅  最后修改于: 2020-03-27 15:48:23             🧑  作者: Mango

给定字符串,任务是使用Java中的Regex检查字符串是否仅包含字母。
例子:

Input: GeeksforGeeks
Output: True
Input: Geeks4Geeks
Output: False
Input: null
Output: False

在本文中,使用Regex逐个检查字符串的字符
正则表达式是用于定义字符串模式的API,可用于搜索、操作和编辑文本。它广泛用于定义对字符串(如密码)的约束。在java.util.regex包下提供了正则表达式。
正则表达式

^ [a-zA-Z] * $

可用于检查字符串中的字母。String.matches()方法用于检查字符串是否与给定的正则表达式匹配。
算法:

  1. 获取字符串
  2. 使用matches()将字符串与正则表达式匹配。
  3. 返回true匹配

伪代码:

public static boolean isStringOnlyAlphabet(String str)
{
    return ((!str.equals(""))
            && (str != null)
            && (str.matches("^[a-zA-Z]*$")));
}

下面是上述方法的实现:
程序:检查仅包含字母的字符串

// Java使用Regex检查字符串在Java中是否仅包含字母
class GFG {

    public static boolean isStringOnlyAlphabet(String str)
    {
        return ((str != null)
                && (!str.equals(""))
                && (str.matches("^[a-zA-Z]*$")));
    }
    // Main方法
    public static void main(String[] args)
    {
        // True
        System.out.println("例 1:");
        String str1 = "芒果文档";
        System.out.println("输入: " + str1);
        System.out.println(
            "输出: "
            + isStringOnlyAlphabet(str1));
        // 检查是否包含数字
        System.out.println("\n例 2:");
        String str2 = "芒果4芒果";
        System.out.println("输入: " + str2);
        System.out.println(
            "输出: "
            + isStringOnlyAlphabet(str2));
        // null String
        System.out.println("\n例 3:");
        String str3 = null;
        System.out.println("输入: " + str3);
        System.out.println(
            "输出: "
            + isStringOnlyAlphabet(str3));
        // 空String
        System.out.println("\n例 4:");
        String str4 = "";
        System.out.println("输入: " + str4);
        System.out.println(
            "输出: "
            + isStringOnlyAlphabet(str4));
    }
}

输出:

例 1:
输入: GeeksforGeeks
输出: true
例 2:
输入: Geeks4Geeks
输出: false
例 3:
输入: null
输出: false
例 4:
输入:
输出: false