如何从Java中的日期中删除序数值

时间:2012-12-21 21:20:23

标签: java regex date substring ordinals

我想知道当你不知道输入是单个还是两位数时,是否有人知道在java中删除序数值的最佳方法是什么?

即。

输入:23日

预期产出:23


输入:第1次

预期产出:1


到目前为止,我尝试使用regex util和substring方法的组合:

String dayValue = "";
String dayPattern = "(?<=[0-9])(?:st|nd|rd|th)";
Pattern dPattern = Pattern.compile(dayPattern);
Matcher dMatch;

dayValue = "23rd";
dMatch = dPattern.matcher(dayValue);
System.out.println("The Pattern is: " + autoBuyDay.substring(dMatch.start()));

但那只是给了我No match available error。关于如何修改这个或更好的方法来实现我的目标的任何想法?

1 个答案:

答案 0 :(得分:1)

inputString.replaceAll("\\D", "");

将删除字符串中的所有非数字字符。