作者zephyrhymn (是)
看板java
标题Re: [问题] 字串分割重组比较好的写法
时间Thu Sep 28 23:55:51 2017
※ 引述《taco2548 (T@cO)》之铭言:
: 我用网路爬虫爬到日期资料
: 爬下来是字串,显示为 28/09/2017 (星期二)
: 我想把它改成 2017/09/28 (星期二)
: 我知道用基本的字串检索分割重组就可以办到
: 但我是想问有什麽写法比较酷的(很简洁有力的那种)
: 或是有方法可以直接用的呢 ?
如果是时间的话可以用SimpleDateFormat
Java 8以上可以用java.time类别
如果不把它当成时间来处理而是字串来处理的话
大概是用Regex来处理吧
至於有没有简洁有力就...
public static void main(String[] args)
{
String str = "28/09/2017 (星期二)";
Pattern pattern = Pattern.compile("(\\d\\d)/(\\d\\d)/(\\d\\d\\d\\d) \\((\\S\\S\\S)\\)");
Matcher matcher = pattern.matcher(str);
if (matcher.matches())
{
StringBuffer sb = new StringBuffer();
matcher.appendReplacement(sb, "$3/$2/$1 ($4)");
System.out.println(sb.toString());
}
else
{
System.out.println("Unmatched!");
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.171.86.19
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1506614155.A.E1A.html
1F:→ iFEELing: 用 split / 然後重组...搞不好直接算位置重组就很快了.. 09/29 00:00
用regex感觉比较有fu XD
字串拆解就用自己最喜欢的方式就行
※ 编辑: zephyrhymn (1.171.86.19), 09/29/2017 00:29:20
2F:推 yoshilin: 先转成date还可以检核日期合不合理 09/29 06:26