Re: [请益] 字串解析

楼主: shadowjohn (转角遇到爱)   2016-12-21 19:31:09
※ 引述《aaa6542005 (Poppy)》之铭言:
: 现在取得一个电影时刻的长字串,字串中间也都没空白,如下:
: " 12月21日至12月22日:10:10、12:20、14:30、16:50、19:10、21:30、23:4012月23日
: :10:20、12:30、14:50、17:10、19:30、21:45、23:5512月24日至12月27日:10:10、
: 12:20、14:35、16:50、19:10、21:25 "
: 请问我该如何把这字串解析成类似上面那样?
: 我想要的结果类似这样:
: 12-21 12-22 => 10:10、12:20、14:30、16:50、19:10、21:30、23:40
: 12-23 => 10:20、12:30、14:50、17:10、19:30、21:45、23:55
: 12-24 12-25 12-26 12-27 => 10:10、12:20、14:35、16:50、19:10、21:25
: array或者json都可以
: 请问要怎样才能做到呢?
: 想一整个下午了><
: 拜托高手大大们帮我解惑
如果你不会re,或是你担心你的re写的不到位
那就用最简单的方式慢慢切
1、先把中间所有的空白都拿掉
2、然后用"日:"切开
Array
(
[0] => 12月21日至12月22
[1] => 10:10、12:20、14:30、16:50、19:10、21:30、23:4012月23
[2] => 10:20、12:30、14:50、17:10、19:30、21:45、23:5512月24日至12月27
[3] => 10:10、12:20、14:35、16:50、19:10、21:25
)
有没有发现规律了?
跳过第一组不作
第二组开始,就是找到“第一个月,往前推2字符,就是上一个array的结果”
后面依此类推,只是在作 strpos、substr的事
应该就是这样就可以完成
至于re会写的确是简单的多,判断是“\d\d月\d\d日|\d\d月\d\d日至\d\d月\d\d日…
不过我自己要写这种东西的话,我会选前者,注解写清楚~
3分钟就写出来了...
楼主: shadowjohn (转角遇到爱)   2016-12-21 19:44:00
http://3wa.tw/demo/htm/test_javascript.php?id=34虽然是javascript作的,不过很接近php了,给你参考XD

Links booklink

Contact Us: admin [ a t ] ucptt.com