主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

字符串配列および文字配列内のテキスト

MATLAB®にはテキストの表現方法が2つあります。R2016b以降は。”字符串配列“にテキストを格納することができます。また,どのバージョンのMATLABでも文字配列にテキストを格納できます。一般に,文字配列はテキストを“文字ベクトル”として格納するのに使用されます。MATLABでは string は二重引用符で、文字ベクトルは一重引用符で囲んで表示されます。

字符串配列を使用したテキストの表現

字符串データ型を使用して,1行n列の任意の文字のシーケンスを字符串として保存できます。R2017a以降は,弦を作成するにはテキストを二重引用符で囲みます。

str =“你好,世界”
str = "Hello, world"

テキスト“你好,世界”の長さは12文字ですが,str自体は1行1列の字符串,つまり”字符串スカラー”です。字符串スカラーは、ファイル名、プロット ラベル、または他のテキスト形式の情報を指定するのに使用できます。

字符串内の文字数を求めるには,関数strlengthを使用します。

n = strlength (str)
n = 12

テキストに二重引用符が含まれている場合,定義内で2つの二重引用符を使用します。

str =“他们说”、“欢迎光临!””和挥手。”
他们说:“欢迎!”并挥手致意。

字符串の末尾にテキストを追加するには,加算演算子+を使用します。変数を字符串に変換できる場合,+はそれを変換してから追加します。

氏度= 71;摄氏度= (fahrenheit-32) / 1.8;tempText =“温度”+摄氏度+“C”
tempText = "temperature is 21.6667C"

R2019a以降は,関数附加を使用してテキストを連結することもできます。

tempText2 = append (“今天的”tempText)
今天的温度是21.6667摄氏度

関数字符串datetime値は,数値,持续时间値,直言値など,異なる型の入力を変換できます。たとえば,πの出力を字符串に変換します。

ps =字符串(π)
ps = " 3.1416 "

複数のテキストを1つの字符串配列に格納できます。配列の各要素には,異なる数の文字をもつ字符串をパディングせずに格納できます。

str = [“水星”“双子座”“阿波罗”...“天空实验室”B“天空实验室”“国际空间站”
str =2 x3字符串"水星" "双子座" "阿波罗" "太空实验室" "太空实验室B" "国际空间站"

strは2行3列の字符串配列です。字符串の長さは,関数strlengthを使用して求めることができます。

N = strlength (str)
N =2×37 6 6 6 8 3

R2018b以降,弦配列はMATLABおよびMathWorks®製品全体でサポートされています。文字配列(および文字ベクトルの细胞配列)を入力として受け入れる関数は字符串配列も受け入れます。

文字ベクトルを使用したテキストの表現

1 行n列の文字シーケンスを文字ベクトルとして保存するには,字符データ型を使用し,一重引用符で囲みます。

空空的=“你好,世界”
chr = 'Hello, world'

テキスト“你好,世界”の長さは12文字で,空空的はこれを1行12列の文字ベクトルとして格納します。

空空的
名称大小字节类属性chr 1x12 24 char

テキストに一重引用符が含まれている場合は,定義内で一重引用符を2つ使用します。

空空的=”他们说:“欢迎!“和挥手。
他们说:“欢迎!”和挥手。

文字ベクトルの主な用途は2つあります。

  • ファイル名やプロットラベルなど,単一のテキストの指定。

  • 文字を使用してエンコードされているデータの表現。このような場合,個々の文字へのアクセスしやすさが必要となることがあります。

たとえば,DNA配列を文字ベクトルとして保存できます。

seq =“GCTAGAATCC”

数値配列にインデックスを付ける場合と同様に,インデックスを付けることで個々の文字や文字のサブセットにアクセスできます。

seq(6节)
ans =“将军”

他のタイプの配列を連結する場合と同様に,大かっこを使用して文字ベクトルを連結します。

seq2 = [seq“ATTAGAAACC”
seq2 = ' GCTAGAATCCATTAGAAACC '

R2019a以降は,附加を使用してテキストを連結することもできます。関数附加は,弦配列,文字ベクトル,文字ベクトルの细胞配列を一貫して扱うので推奨されます。

seq2 = append (seq,“ATTAGAAACC”
seq2 = ' GCTAGAATCCATTAGAAACC '

字符串配列を入力として受け入れるMATLAB関数は,文字ベクトルと,文字ベクトルの细胞配列も受け入れます。

参考

||||||

関連するトピック