需求: 有N个长度不定的字符串,如:“aabs.333”,"aac.11","111ddddd.3122"等
我现在想取出每个字符串小数点后面的部分,这个该怎么写?
------解决方案--------------------------------------------------------
大概是:
str = str.replaceAll("[^\\.]*\\.(\\d*).*", "$1");
System.out.println(str);
------解决方案--------------------------------------------------------
先对每个字符串split(".");再获取。
------解决方案--------------------------------------------------------
先对每个字符串split(".");再获取。或者正则表达式截取,。
------解决方案--------------------------------------------------------
- Java code
public static void main(String[] args) throws ParseException { String testStr = "\"aabs.333\",\"aac.11\",\"111ddddd.3122\""; String reg = "\"[^\\.]*\\.([^\"]+)\""; Pattern p = Pattern.compile(reg); Matcher matcher = p.matcher(testStr); while (matcher.find()) { System.out.println(matcher.group(1)); } }
------解决方案--------------------------------------------------------
很赞!
------解决方案--------------------------------------------------------
- Java code
System.out.println("aabs.333".substring("aabs.333".lastIndexOf(".")+1));
------解决方案--------------------------------------------------------
只满足LZ的需求的话很简单:
- Java code
public static void main(String[] args) { String strings[] = { "aabs.333", "aac.11", "111ddddd.3122" }; for (String str : strings) { if (str.contains(".")) System.out.println(str.substring(str.lastIndexOf('.') + 1)); } }