convert a string into a date and time format

1 回表示 (過去 30 日間)
Jorge Luis Paredes Estacio
Jorge Luis Paredes Estacio 2023 年 1 月 4 日
コメント済み: Star Strider 2025 年 3 月 11 日
Hello, How can I convert this string into a date and time format in matlab. The months will be in spanish and the number of letters may vary for the month. This data will be obtained from different files and it will vary.
m ='October17,196616:41:00'
The result should be date_time= 1996/10/17 16:41:00
Thank you

採用された回答

Star Strider
Star Strider 2023 年 1 月 4 日
Try something like this —
m ='October17,196616:41:00';
DT = datetime(m, 'InputFormat','MMMMdd,yyyyHH:mm:ss', 'Format','yyyy/MM/dd HH:mm:ss')
DT = datetime
1966/10/17 16:41:00
.
  4 件のコメント
Steven Lord
Steven Lord 2025 年 3 月 11 日
If you've imported the data as a string array:
s1 = ["11-Mrz-2025 10:03:47"; "12-Dec-2025 09:22:38"]
s1 = 2x1 string array
"11-Mrz-2025 10:03:47" "12-Dec-2025 09:22:38"
s2 = replace(s1, ["Mrz", "Dec"], ["März", "Dez"])
s2 = 2x1 string array
"11-März-2025 10:03:47" "12-Dez-2025 09:22:38"
d2 = datetime(s2, Locale="de_DE")
d2 = 2x1 datetime array
11-Mar-2025 10:03:47 12-Dec-2025 09:22:38
You could write a small helper function, call it standardizeMonth, to perform that replace call to replace any non-standard abbreviations you use.
Star Strider
Star Strider 2025 年 3 月 11 日
@Jim Benjamin — You don’t have to rename all of them, only the non-standard ones.
Also, as I suggested and that @Steven Lord provided an example for, renaming the ones that don’t match MATLAB’s set (see my earlier Comment) can be done in one line using the strrep function.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDates and Time についてさらに検索

製品


リリース

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by