この関数について
文字列を特定の記号で囲んで特別な意味を持たせる試みはよくあります。有名なものはHTML文書です。HTMLはタグを「<」「>」で囲み、意味を持たせます。このような手法が用いられるのは、特定の記号を使用することで自然言語と特別な意味を持つ文字列を区別することができるためです。プログラミングへも応用が可能で、例えば差し込み印刷ツールで文書内のタグを連続して置き換えて印刷するというような使い道もできます。この関数ではそのような特別に意味を持たせた文字列に囲まれた文字列を文字列内から抽出します。ただし、HTMLなどの解析用に作ったわけではないので、性能へ過度な期待はしないこと。
関数コピペ ~コードをクリックするだけでコピー完了!~
使い方 ①引数
引数名 | 型 | 参照 | 省略 | 内容 |
---|---|---|---|---|
start_pos | Long | ByVal | 不可 | 検索開始位置 文字列の始まりは「1」 |
target_string | String | ByVal | 不可 | 抽出したい文字列が含まれる文字列 |
pre_symbol | String | ByVal | 不可 | 囲みの先頭の文字列 |
post_symbol | String | ByVal | 不可 | 囲みの終端の文字列 |
with_out_symbol | Boolean | ByVal | 可 | 囲み文字を取り除くかどうか。True・・取り除く、False・・取り除かない 省略すると「True」 |
使い方 ②戻り値
状態 | 型 | 内容 |
---|---|---|
正常 | String | 抽出した文字列を返します。 |
例外 | String | 例外処理は想定されていません。 |
エラー | String | エラー処理は想定されていません。 |
サンプルコード(クリックでコピー)
【結果】特別な文字列に囲まれた文字列を抽出することができました
サンプルコードを実行すると、数値、英小文字、英大文字、記号「:;<=>?@」の中からランダムで生成した長さ8文字の文字列をイミディエイトウィンドウに出力します。
関数リファレンスにはコピペで使用可能な便利関数を多数掲載!
関数リファレンスでは私が開発の中で必要になったコード部品を汎用化・関数化して公開しています。この記事で紹介した関数以外にもコピペで利用できる関数を多数用意しています。検索窓から必要な機能を検索してみましょう!解説記事も続々公開中。
当サイトで公開している関数はすべて下記ライセンスのもとで配布しています。 Copyright (c) 2024 VBA.funcref Released under the MIT license The MIT LicenseCopyright Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated d...
Comment