求一个方法检验一个字符串是否能做java变量名

新强力 2013-05-05 02:39:52
好多字符串处理 这块一直弄不明白
...全文
206 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
oh_Maxy 版主 2013-05-06
  • 打赏
  • 举报
回复
引用 4 楼 zw393962798 的回复:
[quote=引用 3 楼 oh_Maxy 的回复:] 变量名的要求一般是小写字母开头,后面可以再跟单词字符。查阅JDK的AIP帮助文档,Pattern.java中,小写字母的正则表达式是\p{Lower},单词字符的表达式是\w demo如下:

    public static void main(String[] args)
    {
        //正则表达式初始化
        Pattern p = Pattern.compile("\\p{Lower}\\w*");

        //备用的变量名称初始化
        String[] names = {"a", "A", "a3A", "  ", "a$","aaaAA%%"};

        //循环匹配变量名是否合法
        Matcher m;
        for (int i = 0; i < names.length; ++i)
        {
            //变量名匹配正则表达式
            m = p.matcher(names[i]);

            //匹配成功,打印合法字样
            if (m.matches())
            {
                System.out.println(names[i] + "合法的变量名。");
            }
            else
            {
                System.out.println(names[i] + "不合法的变量名!");
            }
        }
    }

a合法的变量名。
A不合法的变量名!
a3A合法的变量名。
  不合法的变量名!
a$不合法的变量名!
aaaAA%%不合法的变量名!
A不合法?[/quote] 变量名嘛,一般要求已小写字母开头的。当然,如果你愿意,也可以将此条去掉。嗯,相关的正则表达式,可以参考Pattern.java的API帮助文档,很详细的。
新强力 2013-05-06
  • 打赏
  • 举报
回复
引用 3 楼 oh_Maxy 的回复:
变量名的要求一般是小写字母开头,后面可以再跟单词字符。查阅JDK的AIP帮助文档,Pattern.java中,小写字母的正则表达式是\p{Lower},单词字符的表达式是\w demo如下:

    public static void main(String[] args)
    {
        //正则表达式初始化
        Pattern p = Pattern.compile("\\p{Lower}\\w*");

        //备用的变量名称初始化
        String[] names = {"a", "A", "a3A", "  ", "a$","aaaAA%%"};

        //循环匹配变量名是否合法
        Matcher m;
        for (int i = 0; i < names.length; ++i)
        {
            //变量名匹配正则表达式
            m = p.matcher(names[i]);

            //匹配成功,打印合法字样
            if (m.matches())
            {
                System.out.println(names[i] + "合法的变量名。");
            }
            else
            {
                System.out.println(names[i] + "不合法的变量名!");
            }
        }
    }

a合法的变量名。
A不合法的变量名!
a3A合法的变量名。
  不合法的变量名!
a$不合法的变量名!
aaaAA%%不合法的变量名!
A不合法?
oh_Maxy 版主 2013-05-06
  • 打赏
  • 举报
回复
变量名的要求一般是小写字母开头,后面可以再跟单词字符。查阅JDK的AIP帮助文档,Pattern.java中,小写字母的正则表达式是\p{Lower},单词字符的表达式是\w demo如下:

    public static void main(String[] args)
    {
        //正则表达式初始化
        Pattern p = Pattern.compile("\\p{Lower}\\w*");

        //备用的变量名称初始化
        String[] names = {"a", "A", "a3A", "  ", "a$","aaaAA%%"};

        //循环匹配变量名是否合法
        Matcher m;
        for (int i = 0; i < names.length; ++i)
        {
            //变量名匹配正则表达式
            m = p.matcher(names[i]);

            //匹配成功,打印合法字样
            if (m.matches())
            {
                System.out.println(names[i] + "合法的变量名。");
            }
            else
            {
                System.out.println(names[i] + "不合法的变量名!");
            }
        }
    }

a合法的变量名。
A不合法的变量名!
a3A合法的变量名。
  不合法的变量名!
a$不合法的变量名!
aaaAA%%不合法的变量名!
新强力 2013-05-06
  • 打赏
  • 举报
回复
引用 1 楼 tianma630 的回复:
可以用正则。
怎么弄啊 求方法
tianma630 2013-05-05
  • 打赏
  • 举报
回复
可以用正则。

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧