ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

datestr

日付と時刻を文字列書式に変換

構文

  • DateString = datestr(DateVector)
  • DateString = datestr(DateNumber)
  • DateString = datestr(___,formatOut)
  • DateString = datestr(DateStringIn)
  • DateString = datestr(DateStringIn,formatOut,PivotYear)
  • DateString = datestr(___,'local')

説明

DateString = datestr(DateVector) は、日付ベクトルを日付文字列に変換します。datestr は、日付文字列が m 個の列ベクトルを返します。ここで、m は、DateVector における日付ベクトルの総数です。datestr は、既定の日付文字列形式 dd-mmm-yyyy HH:MM:SS (日-月-年、時:分:秒) で日付文字列を返します。既定の設定では、HH:MM:SS = 00:00:00 の場合、返される日付文字列の形式は dd-mmm-yyyy になります。

DateString = datestr(DateNumber) は、シリアル日付値を日付文字列に変換します。datestr は、日付文字列が m 個の列ベクトルを返します。ここで、m は、DateNumber における日付値の総数です。

DateString = datestr(___,formatOut) は、formatOut を使用して、出力日付文字列の形式を指定します。上記構文のいずれの入力引数でも formatOut を使用できます。

DateString = datestr(DateStringIn) は、DateStringIn を既定の日付文字列形式 dd-mmm-yyyy HH:MM:SS の日付文字列に変換します。DateStringIn のすべての日付文字列は、同じ形式をもたなければなりません。

DateString = datestr(DateStringIn,formatOut,PivotYear) は、DateStringInformatOut で指定される形式で DateString に変換します。ここでは、オプションの PivotYear を使用して、年が 2 文字で指定される日付文字列を解釈します。

DateString = datestr(___,'local') は、現在のロケールの言語の日付文字列を返します。これは、コンピューターのオペレーティング システムで選択する言語です。引数リストから local を省略すると、datestr は既定の言語 (US English) で日付文字列を返します。これまで説明した構文のいずれかで local を使用します。引数 local は、引数の列の最後に指定しなければなりません。

すべて展開する

日付ベクトルを日付文字列に変換する

DateVector = [2009,4,2,11,7,18];

datestr(DateVector)
ans =
   02-Apr-2009 11:07:18

datestr は、既定の日付文字列形式で日付文字列を返します。

日付と時刻を特定形式に変換

mm/dd/yy 書式で現在の日付を表示します。

シンボル識別子の文字列を使用して、この形式を指定できます。

formatOut = 'mm/dd/yy';
datestr(now,formatOut)
ans =
   09/07/12

あるいは、数値識別子を使用して、この形式を指定できます。

formatOut = 2;
datestr(now,formatOut)
ans =
   09/07/12

日付および時刻の書式を変更して、ミリ秒を表示することもできます。

dt = datestr(now,'mmmm dd, yyyy HH:MM:SS.FFF AM')
dt =
January 05, 2012  2:44:48.753 PM

12 時間制文字列を 24 時間制に変換する

12 時間制の 05:32 p.m. を 24 時間制に変換します。

datestr('05:32 PM','HH:MM')
ans =

17:32

24 時間制の 05:32 を 12 時間制に変換します。

datestr('05:32','HH:MM PM')
ans =

5:32 AM

AMPM を文字列 formatOut で使用しても、どの文字が実際に日付文字列の一部になるかには影響がなく、それらを日付文字列に含めるかどうかを指定するだけです。MATLAB® では、入力された時刻に基づいて AM にするか PM にするかが選択されます。

カスタム形式から日付文字列を変換する

入力日付文字列の形式を指定するため、datestr 内で datenum を呼び出します。

formatOut = 'dd mmm yyyy';
datestr(datenum('16-04-55','dd-mm-yy',1900),formatOut)
ans =
16 Apr 1955

複数の日付文字列を変換する

セル配列で複数の日付文字列を渡して、複数の日付文字列入力を変換します。

入力日付文字列には、すべて同じ形式を使用しなければなりません。たとえば、次のコマンドで渡す 3 つの日付では、すべて mm/dd/yyyy 形式を使用しています。

datestr(datenum({'09/16/2007';'05/14/1996';'11/29/2010'}, ...
    'mm/dd/yyyy'))
ans =
    16-Sep-2007
    14-May-1996
    29-Nov-2010

datestr は、既定の日付文字列形式に変換された日付文字列の文字配列を返します。

正常な範囲に入らない値の日付文字列を変換する

下記の日付は、正常な範囲外の値 (月=13) を使用するため、datestr 内で datenum を呼び出して期待された値を返します。

datestr(datenum('13/24/88','mm/dd/yy'))
ans =
   24-Jan-1989

ピボット年の使用

年の範囲を変更するには、ピボット年を変更します。

ピボット年に 1900 を使用します。

DateStringIn = '4/16/55';
formatOut = 1;
PivotYear = 1900;
datestr(DateStringIn,formatOut,PivotYear)
ans =
   16-Apr-1955

同じ日付文字列の場合、ピボット年に 2000 を使用します。

PivotYear = 2000;
datestr(DateStringIn,formatOut,PivotYear)
ans =
   16-Apr-2055

ローカル言語で日付文字列を返す

日付値を現在のロケールの言語の日付文字列に変換します。

フランス語ロケールでは、引数 local を使用します。

DateNumber = 725935;
formatOut = 'mmmm-dd-yyyy';
str = datestr(DateNumber,formatOut,'local')
str =
Juillet-17-1987

‘local’ を指定せずに同じ呼び出しを行うことができます。

str = datestr(DateNumber,formatOut)
str =
July-17-1987

この場合、既定の出力設定は英語です。

入力引数

すべて展開する

DateVector - 日付ベクトル行列

日付ベクトルを、m 行 6 列の行列として指定します。ここで、m は、日付ベクトルの全部 (6 要素) を含む数です。DateVector の各要素は、小数にすることができる秒要素を除き、正の整数値または負の整数値でなければなりません。要素が通常の範囲外にある場合、MATLAB はその日付ベクトル要素と前の要素の両方を調整します。たとえば、分要素が 70 の場合、MATLAB は時間要素を 1 ずつ調整し、分要素を 10 に設定します。分要素が -15 の場合、MATLAB は 1 ずつ時間要素を減らし、分要素を 45 に設定します。月値は例外です。MATLAB は、1 未満の月値を 1 に設定します。

例: [2003,10,24,12,45,07]

データ型:double

DateNumber - シリアル日付値スカラー | ベクトル | 行列 | 配列

シリアル日付値。スカラー、ベクトル、行列または正の倍精度数値の配列として指定します。

例: 731878

データ型:double

formatOut - 日付文字列出力の形式-1 (既定の設定) | 文字列 | 整数

日付文字列出力の形式を、シンボル識別子の文字列、または事前定義された形式に対応する整数として指定します。formatOut を指定しない場合、datestr は、既定の日付文字列形式 dd-mmm-yyyy HH:MM:SS (日-月-年、時:分:秒) で日付文字列を返します。既定の設定では、HH:MM:SS = 00:00:00 の場合、返される日付文字列の形式は dd-mmm-yyyy になります。

次の表は、文字列 formatOut を構築するために使用できるシンボル識別子を示します。フィールドを区切るためのハイフン、スペース、コロンなどを含めることができます。

シンボル識別子

説明

yyyy

4 桁表記の年

1990, 2002

yy

2 桁表記の年

90, 02

QQ

文字 Q と 1 桁で表記する四半期

Q1

mmmm

フル ネームで表記する月

March, December

mmm

最初の 3 文字で表記する月

Mar, Dec

mm

2 桁表記の月

03, 12

m

大文字の頭文字で表記する月

M, D

dddd

フル ネームで表記する曜日

Monday, Tuesday

ddd

最初の 3 文字で表記する曜日

Mon, Tue

dd

2 桁表記の日

05, 20

d

大文字の頭文字で表記する曜日

M, T

HH

2 桁表記の時間
(シンボル識別子 AM または PM が使用される場合は先頭の 0 なし)

05, 5 AM

MM

2 桁表記の分

12, 02

SS

2 桁表記の秒

07, 59

FFF

3 桁表記のミリ秒

057

AM or PM

日付文字列に挿入される AM または PM

3:45:02 PM

文字列 formatOut は、以下のガイドラインに従わなければなりません。

  • どのフィールドも複数回指定することはできません。たとえば、'yy-mmm-dd-m' は、2 つの月識別子を含むので使用できません。ただし、例外として、dd の 1 つのインスタンスは、他の日識別子の 1 つのインスタンスと組み合わせることができます。たとえば、'dddd mmm dd yyyy' は有効な入力です。

  • AM または PM を使用する場合は、HH フィールドも必要です。

  • QQ は、それだけで使用することも、年の指定子と併用することもできます。

次の表は、事前定義された MATLAB 日付形式を示します。

数値識別子

日付文字列形式

-1 (既定)

'dd-mmm-yyyy HH:MM:SS' または 'HH:MM:SS'= 00:00:00 の場合は 'dd-mmm-yyyy'

01-Mar-2000 15:45:17 または 01-Mar-2000

0

'dd-mmm-yyyy HH:MM:SS'

01-Mar-2000 15:45:17

1

'dd-mmm-yyyy'

01-Mar-2000

2

'mm/dd/yy'

03/01/00

3

'mmm'

Mar

4

'm'

M

5

'mm'

03

6

'mm/dd'

03/01

7

'dd'

01

8

'ddd'

Wed

9

'd'

W

10

'yyyy'

2000

11

'yy'

00

12

'mmmyy'

Mar00

13

'HH:MM:SS'

15:45:17

14

'HH:MM:SS PM'

3:45:17 PM

15

'HH:MM'

15:45

16

'HH:MM PM'

3:45 PM

17

'QQ-YY'

Q1-01

18

'QQ'

Q1

19

'dd/mm'

01/03

20

'dd/mm/yy'

01/03/00

21

'mmm.dd,yyyy HH:MM:SS'

Mar.01,2000 15:45:17

22

'mmm.dd,yyyy'

Mar.01,2000

23

'mm/dd/yyyy'

03/01/2000

24

'dd/mm/yyyy'

01/03/2000

25

'yy/mm/dd'

00/03/01

26

'yyyy/mm/dd'

2000/03/01

27

'QQ-YYYY'

Q1-2001

28

'mmmyyyy'

Mar2000

29

'yyyy-mm-dd'
(ISO 8601)

2000-03-01

30

'yyyymmddTHHMMSS'
(ISO 8601)

20000301T154517

31

'yyyy-mm-dd HH:MM:SS'

2000-03-01 15:45:17

DateStringIn - 変換する日付文字列文字列 | セル配列

変換する日付文字列を、単一の文字列として、または各行が 1 つの日付文字列に対応する、文字列のセル配列として指定します。

MATLAB は、2 文字の日付文字列の年 (たとえば、'79') を現在の年を中心に 100 年の範囲に入るものと考えます。

すべての日付文字列は、同じ日付形式とし、次のいずれかの MATLAB 日付形式でなければなりません。

日付文字列形式

'dd-mmm-yyyy HH:MM:SS'

01-Mar-2000 15:45:17

'dd-mmm-yyyy'

01-Mar-2000

'mm/dd/yyyy'

03/01/2000

'mm/dd/yy'

03/01/00

'mm/dd'

03/01

'mmm.dd,yyyy HH:MM:SS'

Mar.01,2000 15:45:17

'mmm.dd,yyyy'

Mar.01,2000

'yyyy-mm-dd HH:MM:SS'

2000-03-01 15:45:17

'yyyy-mm-dd'

2000-03-01

'yyyy/mm/dd'

2000/03/01

'HH:MM:SS'

15:45:17

'HH:MM:SS PM'

3:45:17 PM

'HH:MM'

15:45

'HH:MM PM'

3:45 PM

    メモ:   ある日付文字列形式から別のものに変換する場合、入力日付文字列の形式を指定できるよう、最初に文字列を関数 datenum に渡します。これにより、入力日付文字列の形式が正しく解釈されます。例については、「カスタム形式から日付文字列を変換する」を参照してください。

PivotYear - 100 年の日付範囲の開始年現在の年から 50 年を引いた年 (既定の設定) | 整数

2 文字表記の年を含む 100 年の日付範囲の開始年を整数で指定します。ピボット年は、年が 2 文字で指定されている日付文字列の解釈に使用されます。

例: 2000

データ型:double

出力引数

すべて展開する

DateString - 日付文字列文字列 | 2 次元文字配列

m 行の文字配列として返される日付文字列。ここで、m は、入力日付ベクトル、シリアル日付値または日付文字列の総数です。既定の出力日付文字列形式は、時間、分、秒がすべて 0 で HH:MM:SS が抑止されていない限り、dd-mmm-yyyy HH:MM:SS (日-月-年、時:分:秒) です。

詳細

すべて展開する

ヒント

  • 事前定義された MATLAB 日付形式でない日付文字列を変換するには、datenum または datevec のいずれかを使用して、最初に日付文字列を日付値に変換します。

参考

|

この情報は役に立ちましたか?