# 文字列関数

これらの関数は文字列を操作します。

注 :

- インデックスパラメータはゼロから始まります。つまり、文字列の最初の文字はインデックス 0 、2 番目の文字はインデックス 1 のようになります。
- セルの幅よりも 1 文字分幅が大きいテキスト文字列は切り捨てられることがあります。列の幅を増やすか、文字列に空白文字を追加すると、文字列全体が表示されます。

- 文字列関数は Unicode 文字の文字列を操作します。

関数 | 説明
Code (テキスト, [インデックス]) | 指定したインデックスにある文字の Unicode コードポイントに対応する整数値を返します。インデックスが指定されていない場合は、最初の文字のコードを返します。文字列が空の場合、またはインデックスが文字列の末尾を超えている場合は、ゼロを返します。Unicode コードポイントの最初の 127 文字は ASCII と同じですが、この関数では Unicode の全範囲がサポートされています。 Code の例 セル A2 に「ABC123」という英数字文字列が含まれている場合、関数 Code(A2) は 65.000 を返します。これは「A」の ASCII コードです。
Concatenate (引数 1, [引数 2, 引数 3, ...]) | 複数の英数字テキスト文字列を連結した文字列を返します。数値引数は、自動的にテキストに変換されます。 Concatenate の例 セル A2 に英数字文字列「A1B1」が含まれ、セル A3 に英数字文字列「C1D2」が含まれ、セル A4 に浮動小数点数 4.556 が含まれている場合、関数 Concatenate(A2,A3,A4) は「A1B1C1D24.556」を返します。
Exact (テキスト 1, テキスト 2) | テキスト 1 とテキスト 2 が同じ場合は 1 を返し、同じでない場合は 0 を返します。 注 : Exact 関数は大文字と小文字を区別します。 Exact の例 セル A2 に文字列「ABC123」が含まれ、セル A3 に文字列「ABC1234」が含まれている場合、Exact(A2,A3) は 0.000 を返します。 セル A2 に文字列「VISION」が含まれ、セル A3 に文字列「VISION」が含まれている場合、Exact(A2,A3) は 1.000 を返します。
Find (検索するテキスト, 検索対象テキスト, [開始文字]) | 検索対象テキスト文字列に含まれる検索するテキスト文字列のインデックス位置を返します。 注 : Find 関数は大文字と小文字を区別します。 Find の例 検索するテキストと検索対象テキストはセル参照にするか、または関数の引数に文字列を直接追加することができます。セル A2 に文字列「123」が含まれ、セル A3 に文字列「ABC123」が含まれています。Find(A2, A3) または Find("123", A3) は、「ABC123」内の「123」のインデックス位置である 3.00 を返します。開始文字は、検索対象テキスト内で検索を開始するインデックス位置を表すオプションの (整数の) 引数です。 Find(A2,A3,2) は検索対象テキストのインデックス位置 2 から始まり、インデックス値 3.000 を返します。 検索するテキストが見つからない場合は、-1.00 を返します。 Find("XYZ",A3) は -1.000 を返します。
FormatString (フォーマット文字列, [テキストまたは値, ...]) | "C" ライブラリの標準フォーマット文字列で構成されたテキスト文字列を返します。FormatString はほとんどのフォーマット文字列パラメータをサポートしています。[フォーマット文字列] ダイアログを使用すると、この機能が自動的に設定されます。 注 : FormatString 関数を手動で編集することはお勧めしません。
Left (テキスト, 文字数) | テキスト文字列の左端から、文字数で指定された数の文字を返します。 Left の例 セル A2 に英数字文字列「ABC123」が含まれている場合、関数 Left(A2,2) は文字列「AB」を返します。
Len (テキスト) | テキスト文字列の文字数を返します。 Len の例 セル A2 に英数字文字列「ABC123」が含まれている場合、関数 Len(A2) は整数値 6.000 を返します。
Lower (テキスト) | 小文字に変換されたテキストを返します。 Lower の例 セル A2 に英数字文字列「ABC123」が含まれている場合、関数 Lower(A2) は文字列「abc123」を返します。
Mid (テキスト, 開始文字, 文字数) | 英数字文字列内のインデックスで指定された開始文字の位置から始まるテキストを、文字数で指定された数だけ返します。 Mid の例 セル A2 に英数字文字列「ABC123」が含まれている場合、関数 Mid(A2,2,2) は文字列「C1」を返します。
Replace (検索対象テキスト, 開始文字, 文字数, 新規テキスト) | 新規テキストによって変更された検索対象テキストを返します。Replace は、インデックス位置開始文字から文字数で指定された数の文字を削除し、置換テキスト新規テキストを挿入します。 Replace の例 セル A2 に英数字文字列「ABC123」が含まれ、セル A3 に文字列「123」が含まれている場合、Replace(A2,0,3,A3) は文字列「123123」を返します。
Right (テキスト, 文字数) | テキスト文字列の右端から、文字数で指定された数の文字を返します。 Right の例 セル A2 に文字列「ABC123」が含まれている場合、Right(A2,2) は文字列「23」を返します。
Stringf (フォーマット文字列, [テキストまたは値, ...]) | "C" ライブラリの標準フォーマット文字列で構成されたテキスト文字列を返します。 ヒント : FormatString 関数はほとんどのフォーマット文字列パラメータをサポートしています。[フォーマット文字列] ダイアログを使用すると、パラメータが自動的に設定されます。 注 : フォーマット文字列は二重引用符で囲む必要があります (例えば、"これは文字列です")。 フォーマット文字列のパラメータには大文字と小文字の区別があります。 Stringf 関数を使用する場合、バックスラッシュ「\」を使用して、その後にフォーマット制御文字が続くことを示します。バックスラッシュの後に制御文字 (「n」、「r」、「t」など) が続かない場合、バックスラッシュの後の文字が挿入されます。1 つのバックスラッシュを表示するには、2 つのバックスラッシュを入力する必要があります。例:Stringf("C:\\InSight2\\") = "C:\InSight2\" 印字不可/制御コード文字は記号で、または「文字化け」して表示されます。 使用可能なフォーマット文字列パラメータは以下のとおりです。
%c | 整数の値に対応する Unicode 文字を返します。 Stringf の %c パラメータの例 セル A2 に整数値 65.000 が含まれている場合、Stringf("%c",A2) は文字「A」を返します。これは、ASCII コード 65 に対応する文字です。関数 Stringf("Value = %c",A2) は文字列「Value = A」を返します。
%d | 整数値を含む文字列を返します。 Stringf の %d パラメータの例 セル A2 に浮動小数点値 123.456 が含まれている場合、Stringf("%d",A2) は数字文字列「123」を返します。関数 Stringf("Value = %d",A2) は、英数字文字列「Value = 123」を返します。
%e | 指数表記値を含む文字列を返します。小数点以下の桁数は、% と e の各パラメータの間に小数点 (.) と数値を入力して指定できます。 Stringf の %e パラメータの例 セル A2 に浮動小数点値 123.456 が含まれている場合、Stringf("%e",A2) は数値文字列「1.234560e+02」を返します。関数 Stringf("%.1e",A2) は数値文字列「1.2e+02」を返します。これは、小数点の後に数値 1 が指定されているためです。
%f | 浮動小数点値を含む文字列を返します。小数点以下の桁数は、% と f の各パラメータの間に小数点 (.) と数値を入力して指定できます。 Stringf の %f パラメータの例 セル A2 に浮動小数点値 123.456 が含まれている場合、Stringf("%f",A2) は数値文字列「123.456001」を返します。関数 Stringf("%.1f",A2) は数値文字列「123.5」を返します。これは、小数点の後に数値 1 が指定されているためです。
%o | 整数の 8 進数値を含む文字列を返します。 Stringf の %o パラメータの例 セル A2 に整数値 123.000 が含まれている場合、Stringf("%o",A2) は数値文字列「173」を返します。これは、整数 123 の 8 進数値です。
%s | 英数字が追加された文字列を返します。 Stringf の %s パラメータの例 セル A2 に文字列「ABC」が含まれている場合、Stringf("%s123",A2) は英数字文字列「ABC123」を返します。セル A2 に数値文字列「123」が含まれている場合、Stringf("%s.450",A2) は数値文字列「123.450」を返します。
%u | 符号なし整数値を含む文字列を返します。 Stringf の %u パラメータの例 セル A2 に浮動小数点値 123.456 が含まれている場合、Stringf("%u",A2) は数値文字列「123」を返します。関数 Stringf("Value = %u",A2) は英数字文字列「Value = 123」を返します。
%x または %X | 整数値の 16 進数値を含む文字列を返します。 Stringf の %x パラメータの例 セル A2 に整数値 123.000 が含まれている場合、Stringf("%x",A2) は文字列「7b」を返します。これは、整数 123 の 16 進数値です。
%% | 1 つのパーセント文字 (%) を含む文字列を返します。
次のフォーマット文字列パラメータは主に、テキストのフォーマットに使用されます (例えば、WriteSMTP 関数で電子メールメッセージのテキストをフォーマットする場合)。
\r | テキストにキャリッジリターンを挿入します。このパラメータは通常、\n (ラインフィード) と一緒に使用されます。
\n | テキストに新しい行を挿入します。このパラメータは通常、\r (キャリッジリターン) と一緒に使用されます。
\\ | テキストにバックスラッシュ「\」を挿入します。
\t | テキストにタブを挿入します。
\v | テキストに垂直タブを挿入します。
\f | テキストに ASCII フォームフィードを挿入します。
\x## | 16 進数値 ## で指定された ASCII または Unicode 文字をテキストに挿入します。 Stringf の \x## パラメータの例 セル A2 に Stringf("\x02123\x1bABC\x03456") が含まれている場合、そのセルには ("<STX>123<ESC>ABC<ETX>456") が表示されます。
\u#### | 16 進数値 #### で指定された ASCII または Unicode 文字をテキストに挿入します。
Strtol (整数テキスト) | 英数字文字列の先頭にある数字 (10 進数、16 進数、8 進数) を整数に変換します。16 進数文字は「0x」で始まり、8 進数文字は「0」で始まる必要があります。 Strtol の例 10 進数:セル A2 にテキスト文字列「123ABC」が含まれている場合、関数 Strtol(A2) は整数値 123.000 を返します。 16 進数:セル A2 にテキスト文字列「0x123」が含まれている場合、Strtol(A2) は整数値 291.000 を返します。 「A」と「B」は 16 進数文字であるため、「0x12AB」は 4,779.000 になります。 「G」は 16 進数文字ではないため、「0x12GB」は 18.000 になります。 8 進数:セル A2 にテキスト文字列「0123ABC」が含まれている場合、Strtol(A2) は整数値 83.000 を返します。
Substitute (検索対象テキスト, 古いテキスト, 新規テキスト, [インスタンス]) | 検索対象テキスト内に現れる古いテキストをすべて新規テキストに置換して作成したテキスト文字列を返します。オプションのインスタンスインデックスを指定すると、そのインスタンスのテキストのみが置換されます。 Substitute の例 セル A2 にテキスト文字列「ABC123123」が含まれ、セル A3 に文字列「123」が含まれ、セル A4 に文字列「abc」が含まれている場合、Substitute(A2,A3,A4,1) は検索対象テキストの 2 番目のインスタンス「123」を置換し、文字列「ABC123abc」を返します。
Token (テキスト, デリミタ, インスタンス) | デリミタで区切られた文字列の中で、指定したインスタンスインデックスにある (出現した) テキストを返します。この関数の引数内でデリミタは二重引用符 (" ") で囲む必要があります。 Token の例 セル A2 にコンマ区切り文字列「A,B,C,1,2,3」が含まれている場合、Token(A2,",",2) は「C」を返します。それは、C がテキスト内のインデックス 2 にあるからです。
Trim (テキスト) | テキストから先頭と末尾のスペースを除き、単語の間にスペースがある場合はそのスペース 1 つだけを残したテキストを返します。制御文字 (キャリッジリターン、ラインフィードなど) もすべて除去されます。 Trim の例 セル A2 に文字列「 ABC 123 」が含まれている場合、Trim(A2) は文字列「ABC 123」を返します。
Upper (テキスト) | テキストを大文字に変換して返します。 Upper の例 セル A2 に英数字文字列「abc123」が含まれている場合、関数 Upper(A2) は文字列「ABC123」を返します。
Value (数値テキスト) | NumericText の浮動小数点値を返します。後続の数値以外の文字は無視されます。 Value の例 セル A2 に数値文字列「123.4」が含まれている場合、関数 Value(A2) は浮動小数点値 123.400 を返します。