对于以下字符串,如果字符串包含主线,则尝试提取“ mainline”;如果不包含主线,则尝试在末尾提取数字。我正在使用Java。
例如,对于以下字符串,我只需要数字结尾
Solaris10NBngp-bwm1.1.X // want 1.1.x
Solaris10NBbytel2.0.0.0x // want 2.0.0.0x
Solaris10NBbwm1.2.X // want 1.2.X
Solaris10NBoam_bwm1.4.0.X // want 1.4.0X
Solaris10NBoam1.7.X // want 1.7.X
主线示例:
Solaris10NBngp-bwm_mainline // want mainline
LinuxNBdaypass_mainline // want mainline
LinuxNBngp_mainline // want mainline
使用正则表达式是否有可能,如果是这样,有人知道怎么做吗? :-)
最佳答案
Solaris10NBngp-bwm1.1.X // want 1.1.x
Solaris10NBbytel2.0.0.0x // want 2.0.0.0x
Solaris10NBbwm1.2.X // want 1.2.X
Solaris10NBoam_bwm1.4.0.X // want 1.4.0X
Solaris10NBoam1.7.X // want 1.7.X
对于以上输入,
expectedString = yourString.replaceAll("[^.]+(\\d+\\.)","$1");