我正在研究一种需要将表示类型声明的字符串解析为其组成部分的方法。所以例如字符串
"List<T extends Integer>"
将产生以下数组:
["List", "T", "extends", "Integer"]
对于像这样的简单情况,我可以使用 apache-commons 的 StringUtils 类的 'substringsBetween' 方法来查找标签内的部分。我遇到的问题是 substringsBetween 方法似乎无法处理嵌套标签。如果我拨打以下电话:
StringUtils.substringsBetween("HashSet<ArrayList<T extends Integer>>", "<", ">");
我最终得到以下结果:
["ArrayList<T extends Integer"]
有没有办法使用 apache commons 来做到这一点,还是我需要手动解析字符串?如果我需要手动解析它,是否有一个很好的算法示例?