SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

VB 基礎編 (その六) 文字列操作 chr、str、trim、left、mid、len、instr、format

VB で文字列を操作する演算子、関数について説明します。

■文字列演算子

  &        文字列の結合

  【例】'** 文字変数を結合する
          dim a as string
          dim b as string
          dim c as string

          a = "abc"
          b = "012"
          c = a & b

        この例では、変数 c に "abc012" がセットされます。

■文字列関数

  chr      キャラクタコードの文字を返す
  asc      文字のキャラクタコードを返す
  str      数値を文字列に変換
  val      文字列を数値に変換
  space    n 個の空白を生成
  string   特定文字を n 個生成
  trim     左右の全角半角空白を削除
  ltrim    左側の全角半角空白を削除
  rtrim    右側の全角半角空白を削除
  lcase    小文字に変換
  ucase    大文字に変換
  left     左側より n 個の文字列を切り出し
  mid      n 番目から n 個の文字列を切り出し
  mid      ステートメントして使用すると文字列を置き換える
  right    右側より n 個の文字列を切り出し
  len      何文字あるか数える
  instr    指定文字列が何番目から存在するか調べる
  format   書式指定変換をする
  now      format と組み合わせて、today などを生成する

  【注】文字列関数は基本的に 1 文字と言う単位で処理する。
        バイトと言う単位で処理したいときは、関数名の最後に「b」を付ける。
        例えば、3 文字 = len("12あ")、6 バイト = lenb("12あ") となる。
        VB6 の lenB、leftB、rightB、midB 関係は UNICODE で処理するので、
        半角も 2 バイトとなる。(VB2 とは異なるので注意!!)

■chr、asc (chrB、chrW、ascB、ascW)

  キャラクタコード関係を操作する。

  【例】'** 改行コード CR/LF を作る。
          dim crlf as string

          crlf = chr(13) + chr(10)

        crlf には、&H0A0D がセットされます。

        chr(0)   = chr(&H0)
        chr(10)  = chr(&H0A)
        chr(13)  = chr(&H0D)
        chr(255) = chr(&HFF)

  【例】'** "a" の文字コード調べる
          dim cd as integer

          cd = asc("a")

        cd には、97 がセットされます。

■str、val

  文字列と数値の変換をする。

  【例】'** 数値を文字列型に変換する
          dim a as string

          a = str(100.12)

        a には、" 100.12" がセットされます。
        サイン桁「+」の意味の空白があることに注意。

  【例】'** 文字列を数値に変換する
          dim a as double

          a = val("100.12")

        a には、100.12 がセットされます。

■space、string

  文字列を生成する。

  【例】'** 5 個の半角空白を作る
          dim a as string

          a = space(5)

        a には、"     " がセットされます。

  【例】'** 5 個の "a" 文字列を作る
          dim a as string

          a = string(5, "a")

        a には、"aaaaa" がセットされます。

■trim、ltrim、rtrim

  全角半角空白を除去する。(文字列空白削除)

  【例】'** 左右の空白を取る
          dim a as string

          a = trim("    abc  def    ")

        a には、"abc  def" がセットされます。

  【例】'** 左の空白を取る
          dim a as string

          a = ltrim(str(100.12))

        a には、"100.12" がセットされます。
        サイン桁「+」の意味の空白が除去されています。
        尚、str 関数に -100.12 を指定したとき a には、"-100.12" が
        セットされます。

■lcase、ucase

  小文字、大文字に変換する。

  【例】'** 小文字にする。
          dim a as string

          a = lcase("ABCdefABC")

        a には、"abcdefABC" がセットされます。

  【例】'** 大文字にする。
          dim a as string

          a = ucase("ABCdefabc")

        a には、"ABCDEFabc" がセットされます。

■left、mid、right (leftB、midB、rightB)

  文字列を切り出す。

  【例】'** 先頭から 4 文字切り出す
          dim a as string

          a = left("abcdef", 4)

        a には、"abcd" がセットされます。

  【例】'** 最後から 4 文字切り出す
          dim a as string

          a = right("abcdef", 4)

        a には、"cdef" がセットされます。

  【例】'** 2 文字目から 4 文字切り出す
          dim a as string

          a = mid("abcdef", 2, 4)

        a には、"bcde" がセットされます。

■mid (midB)

  文字列を置き換える。

  【例】'** 2 文字目から 4 文字を置き換える
          dim a as string

          a = "abcdef"
          mid(a, 2, 4) = "1234"

        a には、"a1234f" がセットされます。

■len (lenB)

  文字列の長さを数える。

  【例】'** 何文字あるか調べる
          dim i as integer

          i = len("abcあいう")

        i には、6 がセットされます。

■instr

  文字列があるか調べる。

  【例】'** "def" の開始場所を調べる
          dim i as integer

          i = instr("abcdefdefdef", "def")

        i には、4 がセットされます。

  【例】'** 5 文字目移行の"def" の開始場所を調べる
          dim i as integer

          i = instr(5, "abcdefdefdef", "def")

        i には、7 がセットされます。

■format、now

  書式化する。(書式変換)

  【例】'** コードをゼロ埋め(0 埋め)にする。
          dim a as string

          a = format(1, "00000")

        a には、"00001" がセットされます。

  【例】'** カンマと小数点を指定
          dim a as string

          a = format(1234, "##,##0.00")

        a には、"1,234.00" がセットされます。

  【例】'** さらに桁合わせをするとき
          dim a as string

          a = right(space(10) + format(1234, "##,##0.00"), 10)

        a には、"  1,234.00" と 10 文字の右寄せがセットされます。

  【例】'** 文字列フォーマット
          dim a as string

          a = format("1234567890001", "@@@@-@@@@@@-@@@")

        a には、"1234-567890-001" がセットされます。

  【例】'** 現在の日付、曜日、時間を生成する
        '   (システム日付、システム時間、現在日付取得、現在時刻取得)
          dim a as string

          a = format(now, "yyyy.mm.dd ddd hh:mm:ss")

        a には、"1999.04.07 Wed 13:46:00" がセットされます。

ああ、疲れた。(笑い)

■VB 基礎編資料
■VB 入門編資料
■VB ビジュアル編資料
■VB テクニック編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2017 Y.SAK