Java Netbeans:以更通用的方式使用正则表达式来提取字符

时间:2016-03-13 19:46:29

标签: java regex netbeans

启者

在Java Netbeans中,我将获取用户输入的字符串,提取所有大写字母字符,然后将大写字母加载到新的char []数组中。该字符串将完全由大写字母和数学/代数运算符组成(例如 {} / + ^ *!()...)。

我很清楚,有多种表达方式涉及match和正则表达式 - 这个问题已经在这个论坛上多次得到解决。

我遇到的问题是,每次提出与此类似的问题时,解决方案太过具体,OP对我的情况有用(例如解决方案仅适用电子邮件地址)。每次提出这个问题时,OP都对用户输入的格式有了相当多的先验知识。

总之,我正在寻找一种方法来使用regex和/或match或Java Netbeans中的任何其他内容来输出输入字符串的所有大写字母,而不管它们如何混乱向上或者原始字符串可能是。例如,如果用户输入:

A * J(1)A + =(B(({C}%A

结果字符串将是:

{“A”,“B”,“C”,“A”}

最后,我在TutorialsPoint上看到的教程以及Oracle的原始文档太过百科全书而无法提供帮助。在Regex上搜索文档会产生足够的阅读材料,我需要花费数天的时间来深入研究它。

我更有能力在Python中做到这一点,只是不知道如何用Java做到这一点。

此致

布伦特

1 个答案:

答案 0 :(得分:0)

    String t = "a*j^A+=(B(({C}%A";
    System.out.println(t.replaceAll("[\\Wa-z]", ""));

仅返回大写字母的字符串。做你想做的事。