- ベストアンサー
これは正規表現とは言えないでしょうか?
正規表現を勉強しようと思っているのですが まずはじめに確認させて下さい。VBAです。 Sub 正規表現() If a Like "*a*" Then End If End Sub は正規表現とは言えないでしょうか? *を使っているからそう思いました。 Dim re As RegExp Set re = New RegExp を使わないと、正規表現といえないのでしょうか? よろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
正規表現は処理系で微妙に違うようです。しかし、ほぼUNIX系の学者の間で固まったものがあり、その系統のものを正規表現としてあるようです。 ワイルドカードは、考えからでは、含まれても、正規表現を使えるようになっているとは言えないと思う。 RegExpのオブジェクトを提供して、初めて仲間入りしたと言えるのではないですか。 パターンマッチの類型(考え方)や記号がある程度共通して無いと、正規表現といいにくいでしょう。その点VBAは不合格だろう。 VB.NETでは取り入れている。 学問的な言語理論関連の文章語句の分析から(検索・置換・チェック)始まったが、WEBの絡みでPHPやPerlでの正規表現が有名になっているようです。 ーー 質問者はウィンドウズ、MS系にしか目が行っていないようだが、正規表現は本家はMSではないので、「Set re = New RegExpを使わないと、正規表現といえないのでしょうか?」は、全体的に見ると、可笑しな感じ。PerlではSet re = New RegExpなどは使わないでしょう。
その他の回答 (2)
- notnot
- ベストアンサー率47% (4900/10358)
正規表現というのは一般名詞なので、かってに意味づけしても良いですが、他の言語と同じ意味での正規表現がある言語で、別のものを正規表現と呼ぶことはさすがに無理です。
お礼
ありがとうございます。
その「*」は「ワイルドカード」。正規表現の「*」とは意味がまるで違う。
お礼
やはり違うのですね。ありがとうございます。
お礼
ありがとうございます。よく勉強してみます。