我想知道是否有一个java库,它可以以类似于日期解析器的方式解析字符串。例如,使用SimpleDateFormat类,可以定义一个模式(yyMMddHHmmssZ)来解析用于获取日期的字符串(010704120856-0700)。我不想解析日期,而是解析任意数字。
例如,我希望能够解析:
String: X0759502.CSV
Pattern: DSSIYYMM.CSV
X -> Data version:
'X' GOES X-ray
'M' GOES Magnetometer
'P' GOES Electrons, Protons & Alpha particles.
07 -> GOES-7, 91 = SMS-1, 92=SMS-2, etc.
3 -> 3-second values
YY -> year
MM -> month然后,例如,获取一个hashmap,在其中我可以使用关键字(例如。YY)得到提取的值。
发布于 2014-11-02 17:14:25
有了java,就可以使用Regex的命名群。有了这种方法,就有可能实现类似于SimpleDateFormat解析器的功能。
为了解析提供的示例(X0759502.CSV),使用了以下正则表达式:
x(?<satellite>\\d{2})(?<interval>\\d)(?<year>\\d{2})(?<month>\\d{2}).csv$与matcher.group("satellite")一起用于获取07。
发布于 2014-10-30 14:30:22
看起来,您需要正则表达式解析(也称为regex)。看看匹配器和模式。链接指向java7API,但这两个类都是从java1.5(或之前)开始出现的。
https://stackoverflow.com/questions/26638910
复制相似问题