Dart文字列

Dart文字列データ型は、一連の文字を表します。Dart文字列は、一連のUTF16コードユニットです。

Dartの文字列値は、一重引用符、二重引用符、または三重引用符で表すことができます。単一行の文字列は、一重引用符または二重引用符で表されます。三重引用符は、複数行の文字列を示すために使用されます。

Dartでの文字列値を表すための構文は次のとおりです。

構文

String  variable_name = 'value'  

//  或は
String  variable_name = ''value''  

// 或は 
String  variable_name = '''line1 
line2'''  

// 或は 
String  variable_name= ''''''line1 
line2''''''

以下の実例は、DartでStringデータ型を使用するやり方を示しています。

void main() { 
   String str1 = 'this is a single line string'; 
   String str2 = "this is a single line string"; 
   String str3 = '''this is a multiline line string'''; 
   String str4 = """this is a multiline line string"""; 

   print(str1);
   print(str2); 
   print(str3); 
   print(str4); 
}

出力結果は以下のとおりです。

this is a single line string 
this is a single line string 
this is a multiline line string 
this is a multiline line string

文字列は不変です。ただし、文字列はさまざまな操作を実行でき、結果の文字列を新しい値として保存できます。

文字列補間

静的文字列に値を追加して新しい文字列を作成するプロセスは、連結または補間と呼ばれます。これは、ある文字列をその他の文字列に追加するプロセスです。

演算子と演算子(+)は、文字列を連結/挿入するための常用のメカニズムです。

実例1

void main() { 
   String str1 = "hello"; 
   String str2 = "world"; 
   String res = str1+str2; 

   print("The concatenated string : ${res}"); 
}

上記のコードを実行すると、出力結果は以下のとおりです。

The concatenated string : Helloworld

実例2

${}を使用して、Dart式の値を文字列に挿入できます。

void main() { 
   int n=1+1; 

   String str1 = "The sum of 1 and 1 is ${n}"; 
   print(str1); 

   String str2 = "The sum of 2 and 2 is ${2+2}"; 
   print(str2); 
}

上記のコードを実行すると、出力結果は以下のとおりです。

The sum of 1 and 1 is 2 
The sum of 2 and 2 is 4

文字列の属性

以下のテーブルにリストされている文字列属性は読み取り専用です。

番号属性説明
1codeUnits文字列のUTF-16コードユニットの変更不可のリストを返します。
2isEmpty文字列が空白の場合、trueを返します。
3lengthスペース、タブ、改行を含む文字列の長さを返します。

文字列を操作するメソッド

Dart言語のcoreライブラリのStringクラスは、文字列を操作するためのメソッドも提供します。メソッドは以下のとおりです。

番号属性説明
1toLowerCase()文字列のすべての文字を小文字に変換します。
2toUpperCase()文字列のすべての文字を大文字に変換します。
3trim()前後にスペースが含まない文字列を返します。
4compareTo()オブジェクトをその他のオブジェクトと比較します。
5replaceAll()指定されたパターンに一致するすべての部分文字列を指定された値に置き換えます。
6split()指定された区切り文字の一致で文字列を分割し、部分文字列のリストを返します。
7substring()文字列の部分文字列を返します。文字列はstartIndex(包括的)からendIndexまたはexclusiveまで拡張されます。
8toString()オブジェクトの文字列表現を返します。
9codeUnitAt()指定されたインデックスの16ビットUTF-16コードユニットを返します。
Share

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です