サポート > リポジトリ > 関数 > 文字列関数

ja | en

文字列処理に関する50個の関数を紹介します。

A1FORMATR7.1.3 |  ACCOUNTKANANORM |  ANORMPART |  ASC |  CONCATENATE |  COUNT |  EXACT |  FIND |  FINDTAIL |  FINDRE |  ISBLANK |  ISINCLUDE |  JIS |  JOIN |  JPKANANORM |  LEFT |  LEN |  LOWER |  LPAD |  LTRIM |  MAILADDRESS |  MATCHRE |  MATCHRE1 |  MID |  NUMTOJTEXT |  PADDING |  PATTERN |  PROPER |  RANDSTR |  REMOVEHTMLTAG |  REPLACE |  REPT |  RIGHT |  RPAD |  RTRIM |  SLICE |  SPLITR7.8 |  SUBSTITUTE |  TEXT |  TOBYTE |  TOSHORT |  TOINT |  TOLONG |  TOFLOAT |  TODOUBLE |  TOSTR |  TOSTR_ARRAY |  TRIM |  UPPER |  VALUE |  VALUE_ARRAY

A1FORMAT(数字)

引数の数字をExcelの「A1形式」文字列に変換します。戻り値は文字列型です。

入力値 変換後の文字列
0"" (空文字)
1A
25Y
26Z
27AA
28AB
701ZY
702ZZ
703AAA
704AAB

ACCOUNTKANANORM(半角カナ文字が格納された文字列)

半角カナで表現された口座名義の正規化処理を行います。検索揺れや、名寄せに適用できます。引数の文字列は半角カナ文字列で、戻り値の型は正規化された半角カナ文字列となります。

本関数を適用する文字列型項目の入力フィルタは、標準の入力フィルタである「文字列(一般)」から「全角->半角」「全角->半角(空白を含む)」のいずれかに変更してください。

ACCOUNTKANANORM(${hankaku-kananame})

詳細な変換ルールは次のとおりです。

  • ハイフン等が連続で複数ある場合は、一つにまとめる。
  • 「ヴ, ヂ, ヅ」を「ブ, ジ, ズ」に正規化する。
  • "株式会社"、"有限会社"等の略号を除去する。
    (*2) 対応する略号は次のとおりです。
    "カ." "ユ." "メ." "シ." "キ." ".カ" ".ユ" ".メ" ".シ" ".キ"
  • 濁点、半濁点を除去する。
  • 小文字(拗音・促音)を大文字に変換する。
  • ハイフンを母音に変換する。
  • 文字列中に"エ"("オ")段の文字が連続し、かつ二文字目が"エ"("オ")の場合、"エ"を"イ"へ、"オ"を"ウ"へ変換する。
  • 半角ブランク(スペース)を削除する。

ANORMPART(住所文字列, 構成要素)

住所正規化コンバータと連携することで、住所文字列から都道府県・市区町村などに分割された要素を取り出します。具体的な使い方は「モデル項目の定義 > 文字列 - 住所正規化コンバータとの連携」をお読みください。

ANORMPART(${address}, "PREF")

構成要素の部分は次の指定を行うことができます。(ダブルクォーテーションで構成要素名を囲ってください。)

構成要素の指定 説明
CTV_CODE市町村コード
AREA_CODE郵便番号
PREF都道府県名
CTV市町村名
AREA町域名
KOAZA小字・丁目
BANCHI_GO番地号
AREA_NUMBER小字・丁目+番地号
NAME建物名
CLASS建物階数
PREF_K都道府県名(カナ)
CTV_K市町村名(カナ)
AREA_K町域名(カナ)
KOAZA_K小字名(カナ)
C_CTV_CODE市町村コード(侯補)
C_AREA_CODE郵便番号(侯補)
C_PREF都道府県名(侯補)
C_CTV市町村名(侯補)
C_AREA地名(侯補)
C_PREF_K都道府県名(カナ)(侯補)
C_CTV_K市町村名(カナ)(侯補)
C_AREA_K町域名(カナ)(侯補)
C_KOAZA_K小字名(カナ)(侯補)
C_KOAZA小字・丁目(侯補)
C_BANCHI_GO番地号(侯補)
C_AREA_NUMBER小字・丁目+番地号(侯補)
C_NAME建物名(侯補)
C_CLASS建物階数(侯補)
・この関数は住所正規化コンバータ R5/R6 API オプションが必要です。
・「候補」は入力された住所の解釈が複数見つかった場合に、次点の住所候補として設定されます。つまり候補は存在しないこともあります。
・AREA_NUMBER の値は KOAZA の値と BANCHI_GO の値をハイフン (-) で結んだものと同じです。すなわち KOAZA と BANCHI_GO を一括りに扱いたい場合に利用できます。
・住所情報の取り扱いの詳細については、住所正規化コンバータ製品に付属のマニュアルをお読みください。

ASC(入力文字列)

全角の文字列を半角の文字に変換します。 具体的には「アルファベット」「数字」「記号」「カタカナ」が対象になります。

CONCATENATE(文字列1, 文字列2, 文字列3,...)

引数の文字列を連結した文字列を返します。 引数の文字列は、コンマ区切りで複数個、記述することができます。(個数の制限はありません)

CONCATENATEの引数に繰り返し項目や繰り返しコンテナ項目を指定することはできません。代わりにJOINを使うことができます。

CONCATENATE(${str1}, ${str2})

動作
CONCATENATE("A") "A"
CONCATENATE("A", "B") "AB"
CONCATENATE("A", "", null, "B", "", "C") "ABC"

COUNT(文字列配列)

引数の文字列配列の長さを返します。引数が null の場合は 0 を返します。

COUNT(${array_of_string_item})

EXACT(文字列1, 文字列2)

二つの文字列の比較を行います。同一なら真(true)を返します。戻り値の型は真偽値(trueまたはfalse)となるため、IF関数の内部などで利用できます。

EXACT(${item1}, ${item2})

動作
EXACT("ABC", "ABC") true
EXACT("ABC", "ABD") false

EXACT(日付1, 日付2)

二つの日付の比較を行います。同一なら真(true)を返します。戻り値の型は真偽値(trueまたはfalse)となるため、IF関数の内部などで利用できます。

EXACT(${date1}, ${date2})

Wagbyは内部で Java を使います。Java では文字列および日付の一致判定を「==」演算子で行うことはできません。例えば item1 == "山田" という式は常にfalseとなります。この問題を回避するため、Wagbyでは EXACT 関数を用意しています。文字列および日付の一致判定は必ず EXACT 関数を用いるようにしてください。

FIND(検索文字列, 対象, [開始位置])

検索文字列が先頭から何番目にあるかを返します。戻り値の型は整数型です。1 から数えます。 見つからなかった場合は -1 を返します。

開始位置は省略できます。省略時の開始位置は 1 となります。 英字の大文字と小文字は区別します。ワイルドカードを使うことはできません。

FIND(${item1}, ${target}, ${pos})

動作
FIND("市", "沖縄県うるま市州崎5番地1", 4) 7
FIND("う", "沖縄県うるま市州崎5番地1") 4

FINDTAIL(検索文字列, 対象)

検索文字列が対象文字列の末尾から何番目にあるかを返します。末尾からみて、最初にみつかった文字の位置を返します。 戻り値の型は整数型です。 見つからなかった場合は -1 を返します。

FINDTAIL(${item1}, ${target})

動作
文字列型の項目 urlitem の値が「file://///server001/fileshare/catalog001.doc」のとき

IF(NOT(ISBLANK(${urlitem})),
MID(${urlitem},FINDTAIL("/",${urlitem})+1),"")
catalog001.doc
文字列型の項目 urlitem の値が「file://///server001\fileshare\catalog001.doc」のとき

IF(NOT(ISBLANK(${urlitem})),
MID(${urlitem},FINDTAIL("\\",${urlitem})+1),"")
catalog001.doc

FINDRE(検索文字列, 対象, [開始位置])

検索文字列が先頭から何番目にあるかを返します。戻り値の型は整数型です。 検索文字列部分に正規表現が指定できます。(正規表現の適用ルールは MATCHRE と同等です。)

開始位置は省略できます。 英字の大文字と小文字は区別します。

FINDRE(${item1}, ${target}, ${pos})

動作
FINDRE("w.+gbyR[0-9]\\.[0-9]\\.[0-9]","あいうえお12345w3gbyR7.abc") 11

ISBLANK(文字列)

ISBLANK(日付型)

ISBLANK(時刻型)

ISBLANK(日付時刻型)

引数が NULL または空白かどうかを調べます。NULL または空白なら真(true)を返します。戻り値の型は真偽値(trueまたはfalse)となるため、IF関数の内部などで利用できます。

ISBLANK(${item1})

動作
ISBLANK("    "); true
ISBLANK("   A"); false

ISINCLUDE(文字列1,文字列2)

第一引数の値に、第二引数のいずれかの文字が含まれていれば true を返します。 戻り値の型は真偽値(trueまたはfalse)となるため、IF関数の内部などで利用できます。

ISINCLUDE(${item1},${item2})

動作
ISINCLUDE("Hello,World!", "aiueo"); true
ISINCLUDE("Hello,World!", "xyz"); false

JIS(入力文字列)

半角の文字列を全角の文字に変換します。 具体的には「アルファベット」「数字」「記号」「カタカナ」が対象になります。

JOIN(文字列配列)

JOIN(文字列配列, 区切り文字)

文字列配列の各要素を、区切り文字で連結した文字列を返します。 区切り文字を指定しない場合は、"," が区切り文字となります。 区切り文字が null の場合、長さ0の文字列 "" を区切り文字として使用します。 文字列配列が null 場合、長さ0の文字列 "" を返します。

null は空白に置換されます。また null 要素に対する区切り文字は出力されません。
例えば引数が "北海道","青森",null,"秋田" という4つの要素だった場合、JOIN の結果は "北海道,青森,秋田" となります。

JOIN(${array_of_string_item}, "#")

JOINと対になる関数がSPLITです。

JPKANANORM(カナ文字が格納された文字列)

濁音、拗音を清音に正規化します。例えば「ヤマダ」という文字列が「ヤマタ」になります。戻り値の型は文字列型です。

JPKANANORM(${kananame})

詳細な変換ルールは次のとおりです。

入力文字:ヴガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポァィゥェォャュョヵヶッ
出力文字:ウカキクケコサシスセソタチツテトハヒフヘホハヒフヘホアイウエオヤユヨカケツ

LEFT(文字列, [文字数])

文字列の先頭 (左端) から指定された文字数の文字を返します。文字数を省略した場合は 1 になります。戻り値の型は文字列型です。

LEFT(${item1}, ${num})

動作
LEFT("abcde", 3) "abc"

LEN(文字列)

文字列に含まれる文字数を返します。戻り値の型は整数型です。

LEN(${item1})

動作
LEN("abcde") 5

LOWER(文字列)

アルファベットの大文字を小文字に変換します。戻り値の型は文字列型です。

LOWER(${item1})

動作
LOWER("HELLO, WORLD."); "hello, world."

LPAD(文字列, 指定桁数)

LPAD(文字列, 指定桁数, 埋め込み文字)

文字列の左側に、指定桁数になるまで埋め込み文字を挿入します。埋め込み文字の指定がない場合は、空白を挿入します。

LPAD(${item1}, 6, "0")

動作
LPAD("ABC", 6); "   ABC"
LPAD("ABC", 6, "0"); "000ABC"

LTRIM(文字列)

文字列の左側に含まれる余分なスペース(半角、全角)、タブ、改行文字を取り除きます。戻り値の型は文字列型です。

LTRIM(${item1})

動作
LTRIM("   ABC"); "ABC"

MAILADDRESS(文字列)

MAILADDRESS(文字配列)

RFC822フォーマットに準拠したメールアドレスを表す文字列から、メールアドレス部を抽出します。 繰り返し項目(文字列)の項目を引数に指定することもできます。この場合、戻り値も文字配列になります。

入力文字列 結果
山田 太郎 <yamada@foo.bar.com> yamada@foo.bar.com

MATCHRE(検索文字列, 対象文字列)

対象文字列から検索文字列に一致する部分文字列を、文字列配列として返します。 検索文字列には、正規表現を用いることができます。

MATCHRE(${searchitem}, ${targetitem})

式の例 JOIN(MATCHRE("(S|E)[0-9]+_[0-9]+$", ${item}), ",")
入力の例 item = "ジャスミン太郎 S2010_0401\n" + "E2010_0402 くばがさ次郎\n" + "さんぴん花子 S2010_0403"
結果 "S2010_0401,S2010_0403"
説明 引数 item の値から「先頭が 'S' または 'E' ではじまり、1つ以上の連続した数字とアンダースコア、そして数字が続いた文字列、そして行末」という条件に合致した文字列を配列として受け取る。さらに、これを JOIN 関数の引数とし、コンマ区切りの文字列にする。

ここで $ は "行末" を表します。上記例における "E2010_0402 くばがさ次郎\n" は、"E2010_0402" の後が行末ではなく、任意の文字が含まれているため条件に合致していないことがわかります。

MATCHRE1(検索文字列, 対象文字列, [インデックス], [グループ番号])

対象文字列から検索文字列に一致する部分文字列を返します。検索文字列にヒットする部分文字列が複数存在する場合は、インデックスを指定して任意の部分文字列を取得できます。(インデックスの開始番号は1)

また、正規表現中に括弧で検索パターンをグループ化した場合、グループ番号を指定して、任意のグループの文字列を取得することができます。インデックスを省略した場合は 1、グループ番号を省略した場合は 0 を指定されたものとして扱います。

例:モデル内の body 項目の文字列内容が次の場合

顧客ID: A0001

ご担当者様へ

いつもお世話になっております。
Wagbyのライセンスについて質問があります。

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
カスタマーID : A0002

以上、よろしくお願いします。

動作
MATCHRE1("^(顧客|カスタマー)ID[ ]*:[ ]*(.*)$", ${body}) 顧客ID: A0001
MATCHRE1("^(顧客|カスタマー)ID[ ]*:[ ]*(.*)$", ${body}, 0) 顧客ID: A0001
MATCHRE1("^(顧客|カスタマー)ID[ ]*:[ ]*(.*)$", ${body}, 1) カスタマーID : A0002
MATCHRE1("^(顧客|カスタマー)ID[ ]*:[ ]*(.*)$", ${body}, 1, 0) カスタマーID : A0002
MATCHRE1("^(顧客|カスタマー)ID[ ]*:[ ]*(.*)$", ${body}, 1, 1) カスタマー
MATCHRE1("^(顧客|カスタマー)ID[ ]*:[ ]*(.*)$", ${body}, 1, 2) A0002

MID(文字列, 開始値, 文字数)

MID(文字列, 開始値)

文字列の任意の位置から指定された文字数の文字を返します。先頭文字の位置が 1 になります。戻り値の型は文字列型です。
第三引数(文字数)を省略した場合は、開始値以降のすべての文字列が返されます。

MID(${item1}, ${begin}, ${length})

動作
MID("abcde", 2, 3) "bcd"
MID("abcde", 2) "bcde"

NUMTOJTEXT(数字, 区切りパターン, 文字種)

NUMTOJTEXT(数字を表す文字列, 区切りパターン, 文字種)

数字を日本語のテキストに変換します。戻り値の型は文字列です。

区切りパターンは次の4種類があります。

  • 0 : 区切りパターンなし
  • 1 : 3桁毎(千単位)
  • 2 : 万および億単位
  • 3 : 十、百、千、万および億単位

文字種パターンは次の4種類があります。

  • 0 : 半角数字
  • 1 : 全角数字
  • 2 : 漢数字(一、二、三)
  • 3 : 旧漢字(壱、弐、参)
返される文字列
NUMTOJTEXT(123456789, 0, 0) "123456789"
NUMTOJTEXT(123456789, 1, 0) "123,456,789"
NUMTOJTEXT(123456789, 2, 0) "1億2345万6789"
NUMTOJTEXT(123456789, 3, 0) "1億2千3百4十5万6千7百8十9"
NUMTOJTEXT(123456789, 0, 1) "123456789"
NUMTOJTEXT(123456789, 1, 1) "123,456,789"
NUMTOJTEXT(123456789, 2, 1) "1億2345万6789"
NUMTOJTEXT(123456789, 3, 1) "1億2千3百4十5万6千7百8十9"
NUMTOJTEXT(123456789, 0, 2) "一二三四五六七八九"
NUMTOJTEXT(123456789, 1, 2) "一二三,四五六,七八九"
NUMTOJTEXT(123456789, 2, 2) "1億二三四五万六七八九"
NUMTOJTEXT(123456789, 3, 2) "一億二千三百四十五万六千七百八十九"
NUMTOJTEXT(123456789, 3, 3) "壱億弐千参百四拾五万六千七百八拾九"
NUMTOJTEXT("59234271", 3, 3) "五千九百弐拾参万四千弐百七拾壱"

PADDING(埋める1文字, 桁数, 文字列)

引数の文字列の前に「埋める1文字」を加えます。全体で「桁数」の範囲内の文字列にします。 「埋める1文字」はダブルクォートで囲みます。(二文字以上が指定された場合、先頭の文字が有効になります。)

PADDING(埋める1文字, 桁数, ${item1})

動作
PADDING("0", 6, ${item1}) "000123"
※ ${item1} の値が "123" の場合

PATTERN(入力文字列, パターン文字列)

入力文字列に、パターン文字列がいくつ含まれているかを返します。

PATTERN(${item1}, "東")

動作
PATTERN("東京と京都", "京") 2
PATTERN("東京と京都", "東京") 1

PROPER(文字列)

アルファベットの 1 文字目を大文字に、2 文字目以降を小文字に変換します。戻り値の型は文字列型です。

PROPER(${item1})

動作
PROPER("hello, world.") "Hello, world."

RANDSTR(桁数)

RANDSTR(桁数,除外する文字列)

英大文字、小文字、数字から構成されるランダムな文字列を生成します。
第二引数は「除外する文字列」を指定します。この引数を省略した場合、除外する文字列として標準で "iIl1Oo0" が指定されます。これは似たような文字を除くことで視認性を高める措置です。

ある項目 A で RANDSTR() を適用し、別の項目 B が A の値を参照する場合、B の値と A の値は同じであることが保証されます。
ある項目 A で RANDSTR() を複数回用いた場合、最初の RANDSTR() の結果と二つ目以降の RANDSTR() の結果は同じ値となります。

RANDSTR(8)

動作
RANDSTR(8, "0123456789") 数字を除く 8 桁のランダムな文字列を生成します。
RANDSTR(8, "") 除外文字列を空と指定したため、すべての文字列を対象としたランダム文字列を生成します。

REMOVEHTMLTAG(対象文字列)

REMOVEHTMLTAG(対象文字列, 改行コード)

文字列中に含まれるHTMLタグを除去します。戻り値の型は文字列型です。
brタグは改行コードに置換されます。第二引数を省略した場合、改行コードは "\r\n" が利用されます。(Windows標準)。個別に "\r" (Mac) や "\n" (Linux) と指定することもできます。

REMOVEHTMLTAG(${richtextitem})

REPLACE(対象文字列, 開始位置, 文字数, [置換文字列])

文字列中の指定された文字数の文字を除去します。置換文字列は省略することができます。戻り値の型は文字列型です。

REPLACE(${target}, ${start}, ${len}, ${replace})

動作
s = "あいうえお" のとき
REPLACE(s,1,1)
"いうえお"
s = "かきくけこ" のとき
REPLACE(s,1,2)
"くけこ"
s = "さしすせそ" のとき
REPLACE(s,2,2)
"させそ"

REPT(文字列, 繰り返し回数)

文字列を指定回数繰り返し表示します。戻り値の型は文字列型です。

REPT(${item1}, ${count})

動作
REPT("*", 5) "*****"

RPAD(文字列, 指定桁数)

RPAD(文字列, 指定桁数, 埋め込み文字)

文字列の右側に、指定桁数になるまで埋め込み文字を挿入します。埋め込み文字の指定がない場合は、空白を挿入します。

RPAD(${item1}, 6, "0")

動作
RPAD("ABC", 6); "ABC   "
RPAD("ABC", 6, "0"); "ABC000"

RTRIM(文字列)

文字列の右側に含まれる余分なスペース(半角、全角)、タブ、改行文字を取り除きます。戻り値の型は文字列型です。

RTRIM(${item1})

動作
RTRIM("ABC   "); "ABC"

SLICE(文字配列, インデックス)

引数の文字列配列の中から、インデックスで指定された要素を返します。戻り値は文字列型です。 入力の文字列配列が null、またはインデックスが文字列配列を超えた値を示した場合は、長さ0の文字列 "" を返します。

SLICE(${array_of_string_item}, 0)

動作
array = "北海道", "青森", "秋田"
SLICE(array, 0)
"北海道"
array = "北海道", "青森", "秋田"
SLICE(array, -1)
""
array = "北海道", "青森", "秋田"
SLICE(array, 3)
""
array = null
SLICE(array, 0)
""

SPLIT(対象文字列)

SPLIT(対象文字列, 区切り文字)

対象文字列を、区切り文字で分割します。区切り文字を省略したときは、半角スペースを区切り文字とします。戻り値の型は文字列の配列です。

区切られた個々の文字列には、LTRIMRTRIMが適用されます。このため、前後の空白は削除されます。

SPLIT(${target})
SPLIT(${target}, ",")
動作
SPLIT(" a  , bc,  d  , efg  ", ",") a
bc
d
efg

SPLITと対になる関数がJOINです。

区切り文字を複数指定する7.11

区切り文字を複数指定することができます。次の例は「,」「;」のいずれも区切り文字として扱います。

SPLIT(${target}, ",;")

SUBSTITUTE(対象文字列, 検索文字列, 置換文字列)

文字列中から検索文字列を探し、置換文字列に置き換えます。戻り値の型は文字列型です。

SUBSTITUTE(${target}, ${str}, ${replace})

動作
s = "沖縄県那覇市" のとき
LEN(s)-LEN(SUBSTITUTE(s, "県", ""))
1
s = "沖縄県沖縄市" のとき
LEN(s)-LEN(SUBSTITUTE(s, "沖", ""))
2

TEXT(数値)

TEXT(数値, 書式)

TEXT(日付, 書式)

数値(または日付のシリアル値)および日付型を書式設定した文字列に変換します。

第二引数の書式を指定しなかった場合は、TOSTR関数と同じ動きになります。

TEXT(${item1}, "yyyy-MM-dd")

TEXT(1234, "#,###") "1,234"
TEXT(3.33333, "0.0") "3.3"
TEXT(0.1234, "0.0%") "12.3%"
TEXT(0.00001, "0.0E0") "1.0E-5"
TEXT(1234, "\\#,####") "\\1,234"
TEXT(${date}, "yyyy-MM-dd"); "2000-01-01"
※ ${date} の値が 2000-1-1 の場合。
TEXT(${date}, "yyyy年M月d日") "2000年1月1日"
※ ${date} の値が 2000-1-1 の場合。
TEXT(${date}, "{0}{1,number,integer}年{2,number,integer}月{3,number,integer}日") "平成28年1月1日"
※ ${date} の値が 2016-1-1 の場合。
(詳細は「和暦についての補足」をお読みください。)
TEXT(${time}, "HH:mm") "15:05"
※ ${time} の値が 15:05:55 の場合。時刻を24時間表記するときは大文字の"H"を使います。
Excel には 24 時間以上を表記するための指定 "[h]:mm" がありますが、Wagby ではサポートしていません。
TEXT(${time}, "h:m:s") "3:5:55"
※ ${time} の値が 15:05:55 の場合。
TEXT(${time}, "ahh:mm") "午後12:00"
※ ${time} の値が 00:00:00 の場合。"a"によって"午前/午後"を表示できます。

和暦についての補足

和暦書式のルールは次のとおりです。

指定方法説明
{0} または {5}年号(明治、大正、昭和、平成)
{6}年号(明、大、昭、平)
{7}年号(M、T、S、H)
{1,number,integer}
{2,number,integer}
{3,number,integer}

応用例 : 日付の「年度」部分を "Hxx" 形式の文字列として取得する

FISCALYEAR関数と組み合わせます。item1 を日付型項目とします。

TEXT(DATEVALUE(CONCATENATE(TOSTR(FISCALYEAR(${item1})),"-1-1")),"{7}{1,number,integer}")

TOBYTE(文字列)

文字列表現された数字を1バイト整数へ変換します。具体的には "1" という文字列を 1 へ変換します。

TOSHORT(文字列)

文字列表現された数字を2バイト整数へ変換します。

TOINT(文字列)

文字列表現された数字を整数型 (4バイト整数) へ変換します。

TOLONG(文字列)

文字列表現された数字を8バイト整数へ変換します。

TOFLOAT(文字列)

文字列表現された数字を4バイト浮動小数へ変換します。

TODOUBLE(文字列)

文字列表現された数字を8バイト浮動小数へ変換します。

TOSTR(数値)

TOSTR(日付)

数値型/日付型の値を文字列型に変換します。TEXT関数と異なり、書式指定を行うことはできません。 計算結果を文字型項目にセットするといった目的に使うことができます。

TOSTR(${num}+1)

TOSTR_ARRAY(数値型の配列)

基本型配列を文字列型配列に変換します。繰り返し項目や、チェックボックス項目などに適用できます。

TRIM(文字列)

文字列から余分なスペース(半角、全角)、タブ、改行文字を取り除きます。先頭の空白はすべて削除されます。文字間の空白は 1 個残します。戻り値の型は文字列型です。

処理の流れは LTRIMRTRIM を行い、かつ、複数の空白文字を 1 文字にまとめるものです。

TRIM(${item1})

動作
TRIM("   ABC"); "ABC"
TRIM("  A B C ") "A B C"
TRIM("   A  B  C   ") "A B C"

UPPER(文字列)

アルファベットの小文字を大文字に変換します。戻り値の型は文字列型です。

UPPER(${item1})

動作
UPPER("hello, world."); "HELLO, WORLD."

VALUE(文字列)

VALUE(文字列, デフォルト値)7.4

数値を表す文字列を数値に変換します。日付、時間を表す文字列は日付(時間)シリアル値に変換します。戻り値の型は 8 バイト浮動小数点型です。

第一引数の文字列が null または解析不可能な値の場合、デフォルト値が用いられます。省略時は Double.NAN(不定)となります。デフォルト値は第二引数で与えることができます。型は8バイト浮動小数です。

VALUE(${item1})
VALUE(${item1}, 0.0)
VALUE("0.12") 0.12
VALUE("1,234") 1234
VALUE("1,234.567") 1234.567
VALUE("1,23E-4") 0.000123
VALUE("12%") 0.12
VALUE("15:30") 0.645833
VALUE("2000-01-01 12:34:56") 36526.52426
VALUE("2000年1月1日") 36526

VALUE_ARRAY(文字列の配列)

VALUEと同じ動作をしますが、引数には文字列の配列を渡します。戻り値の型は 8 バイト浮動小数点型の配列になります。

ja | en