Saya mengekstraksi berbagai format tanggal dari halaman web.
Misalnya. Minggu 10 September 2017 / 09/10/2017 / 10 September 2017.
pada contoh tanggalnya sama, tetapi dalam siaran langsung, tanggalnya adalah benar-benar acak dan berbeda. Ini bisa 01/2/1985 / November 10, 2005
Yang pertama tidak terlalu penting karena ini adalah tanggal saat ini, yang saya hasilkan sendiri dan saya dapat mengubahnya:
tell (current date)
set strMonth to (its month as integer)
set strDay to (its day as integer)
set stryear to (its year as integer)
end tell
set myOwnDate to strMonth & "/" & strDay & "/" & stryear as string
Format yang saya inginkan adalah bilangan bulat hari / bulan / tahun jadi 10/09/2017.
Bisakah saya mengubah dua string lainnya (09/10/2017 / 10 September 2017) ke format ini?
applescript
text
formatting
time
Kevin
sumber
sumber
day/month/year
, tetapi skrip Anda mengembalikan amonth/day/year
tali.Jawaban:
Anda dapat menggunakan NSDataDetector ( metode kakao ) untuk penguraian tanggal dari sebuah string.
Inilah skripnya (diuji pada macOS Sierra ):
Peringatan: pada string yang berisi " digit / digit / tahun ", skrip tidak berfungsi dengan string di" hari bulan tahun "format, string harus dalam" bulan hari Tahun "format
sumber
09/10/2016
, dapat berupa 10 September 2016 atau 09 Oktober 2016 bergantung pada AS yang menggunakannyaMDY
atau banyak tempat lain yang digunakanDMY
, dan dengan sendirinya tanpa konteks lain saya tidak percaya ada cara untuk menentukan mana yang sebenarnya. Karena itu, jika saya lulus09/10/2016
ke pawang Anda, ia kembali"10/09/2016"
, jadi, bisakah Anda menjelaskan bagaimana orang tahu apakah string ini atau tidak tanpa referensi lain,09/10/2016
, dimulai sebagaiMDY
atauDMY
?