No.1ベストアンサー
- 回答日時:
こんにちは。
> 正規表現とはデータベースを操作するにおいて
> 使う機会が多いのでしょうか?
"データベースを操作するにおいて"、は、
使う機会は少ないです。
オブジェクトとしては、RegExpではなくて
ADOやDAO、場合によってはExcelの一般機能などがデータベースを操作する機能です。
データベースを操作するスクリプトとしては、正規表現ではなくて
SQLなどのクエリになります。
ここでいう"データベース"が、どのようなものを指すのか解りませんが
規格の異なる"データベース"間でテーブルの移設をする場合などでは
希に、正規表現を用いた方が簡単な場合もあります。
> 私はエクセルVBAを勉強しているものですが
> 正規表現の知識は必要ですか?
こちらのサイトでVBAに関する質問への回答が数千件にのぼる方でも中には
一度も正規表現を使っていない方もいらっしゃいます。
必要かどうかを決めるのは、業務だったり、趣向だったり、
具体的な必要だったり、ですね。
その人次第なんだと思います。
VBAの力を付けたい、という意味でしたら、そろそろ中級というタイミングで
経験的知識として、一度は動くものを書いておいた方が好いかも知れません。
それによってコーディングの幅が拡がり引いては設計の質が高まります。
とりあえず、教則サイトで基本を学び、応用例に照らして、
正規表現を用いる必然性とかメリットとか、自分で手を動かして確かめながら、
覚えていくと好いと思います。
現実的な実践例を、そこここの質問掲示板などでチェックしてみて
「わざわざ、正規表現を使わなくても、、、」とか
「なるほど、正規表現の方が簡単」とか
「組み合わせるオブジェクト次第では非常に効率的」とか
自分なりに評価できるように慣れていけば、
自分にとっての正規表現の必要性が見えてくるのではないでしょうか。
> エクセルでも正規表現を使う機会は多いですか?
> (エクセルではVBAや関数が不要な単機能なデータしか扱いません)
基本的にはエクセルとは、表計算アプリケーションで、
補助的にデータベース的な扱いをしたりテキストエディタ的な使い方も
一応できる、といったものですが、
この、一応、を本格的なものにする可能性としてVBAが備わっている
ということになるんだと思います。
正規表現にも色々ありますが、基本的には、一連のテキストデータに対して
検索、抽出、置換を行うものです。
ツール本来の目的としてはエクセルは、テキストデータの為にあるものでは
ありませんから、そういう意味では、使う機会は多くはないです。
例えばワードにはワードの正規表現があって、私個人は頻繁に使います。
エクセルやエクセルVBAの標準機能でも、ワイルドカードを用いた
検索、抽出、というのは使う機会は多いです。
これも広い意味で正規表現と呼ぶなら使う機会は多い
ということになるかも知れません。
例えば、
For Each r In Range("B2:E51")
If r.Value Like "*#-#*" Then
' 処理
End if
Next
それぞれのセルの値の中に、"数字""ハイフン""数字"という
3文字の連続が含まれるなら、処理。
これで、
hogehoge123-456piyo
123-456
のようなテキストデータを抽出するような処理はよくあります。
でもこれを発展させて、
"数字""ハイフン""数字"という連続を
"数字""カンマ""数字"という連続に
正確に置換したい、ということになると
きちんと正規表現を勉強しておけば良かった、
ということになるかも知れません。
エクセルVBAの範疇で正規表現というと大抵は
VBScript Regular Expressions のことを指すのだと思います。
ひとつ基本を覚えれば色々な正規表現に対して応用力は付くと思います。
結論めいたことを書くとしたら、覚えておいて決して損はない、という感じです。
ただ、具体的なニーズに則して覚えようとしないと
身に付かないでしょうし、きっと退屈だと思います。
どうでしょう、これを読んでみてやってみよう、と思ったなら、
具体的なニーズに触れ易い質問掲示板をロムしてみること
が役に立つかも知れません。
今は必要なさそうと感じたなら、後回しにしても構わないと思います。
感じたままに決めちゃっていいと思いますけれども。
以上です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Word(ワード) LibreOfficeで数年保存しているデータの変更作業 4 2022/07/08 17:15
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- その他(Microsoft Office) マイクロソフトオフィス 5 2023/07/29 14:31
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- 英語 会社で英語を使うことになっての英語の勉強方法 5 2022/07/03 11:49
- Excel(エクセル) エクセルでのVBA 2 2022/08/03 06:48
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- その他(Microsoft Office) エクセルのマクロについて教えてください。 5 2023/01/21 09:39
- Excel(エクセル) エクセルの表でダブりを解消する方法を、教えてください。 5 2023/04/12 12:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
正規表現 秀丸エディタ 行頭か...
-
正規表現でシングルクォーテー...
-
MFCで正規表現
-
正規表現です。括弧内にある複...
-
PS4コントローラーをPCでゲーム...
-
wordの何も書かれていない2ペー...
-
「彡」って文字はなんという文...
-
4Kの外部モニターに出力すると...
-
EBCDIC⇒SJIS変換の方法
-
EXCELで=より左の文字を一括で...
-
エクセルでアルファベットか数...
-
VBAでの Replace関数で、ワイル...
-
Chr(13)とChr(10)の違いは?
-
Excelで指数表現しないようにす...
-
Excelで3E8を3.00E+8にしない方...
-
文字列からタブコードを取り除...
-
パワーポイントで文字の上に線...
-
エクセルで文字列をtxtファイル...
-
1文字って1バイトだったっけ?
-
エクセルで文字列の最大値を抽...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【3桁の数字】に【完全一致】す...
-
正規表現 秀丸エディタ 行頭か...
-
[VBS] テキストファイルから任...
-
正規表現でAND検索はできる...
-
メールアドレスの正規表現について
-
C言語のコメントを「正規表現」...
-
vbaの正規表現で、マッチした一...
-
文章中全ての半角カッコ ( の...
-
正規表現でシングルクォーテー...
-
正規表現です。括弧内にある複...
-
(秀丸)正規表現で、特定文字列...
-
C# 数列の読み込み
-
下記の正規表現のお願いですが...
-
正規表現で大文字小文字指定に...
-
正規表現の仕様について
-
python 正規表現
-
スパムメールをブロックするた...
-
第二水準漢字が含まれるか?
-
grepの正規表現での最短マッチ...
-
正規表現
おすすめ情報