1. ホーム
  2. Web プログラミング
  3. 正規表現

EXCELで直接、詳細な手順で正規表現を行う。

2022-01-17 05:09:08

正規表現、馴染みのない方はいないと思います。しかし、私たちが最もよく使うオフィスソフトのEXCELでは、正規表現機能を直接使うことができない(少なくとも10バージョンのEXCELではできなかった)ので、今日はEXCELの正規表現機能をカスタマイズする方法を紹介します。

まず、必要なことを述べます。

例えば、次のような文字列を分割したい。

このような要件には、明らかに正規表現が最適でしょう。

II. 解決手順

私たちが使っている次の方法は、長期的に有効な関数を定義するものです。

1、EXCELファイルを新規作成し、ここではREと名付け、ALT + F11でマクロエディタを開き、任意の1シートを選択し、右クリック、Insert Moduleを選択します。

2、モジュール1をダブルクリックし、以下のVBAカスタム関数コードを編集します。

Function RE(OriText As String, ReRule As String, ReplaceYesOrNo As Boolean)
'''
'OriText: the string to be matched
'ReRule: regular expression
''' 'ReplaceYesOrNo: whether to use the replace method, 1 means replace, 0 means no replace, default is no replace
'''

'Create a regular expression instance object
Set ReObject = CreateObject("vbscript.regexp")

With ReObject

 'Whether to be case-sensitive, the general requirement is not to be case-sensitive, so here is True
 IgnoreCase = True

 'Whether to match all, the general requirement is also to match all, here is also the default is True, if False means only the first occurrence of the match
 .Global = True

 'Match the regular expression used in the
 .Pattern = ReRule

 If ReplaceYesOrNo Then

  'If the replace method is used, the item matched by the regular expression will be replaced with an empty one
  RE = .Replace(OriText, "")

 Else
  'Otherwise, return the first item of the iterable object
  RE = .Execute(OriText)(0)

 End If

End With

End Function

3、ロードマクロ形式で保存する。

画像

4. 下記のアドインをクリックしてください。

画像

5. クリックすると表示されます。

6. 先ほど保存したロードマクロ形式のファイルを選択すると、以下のようになります。

さて、ここでは、正規関数が作成され、その後、EXCELを開くたびに直接、適切な正規表現をノックアウトする必要性に応じて、RE関数の定義を使用することができますしています。

第三に、提示された結果

画像

この記事に直接EXCELの詳細な手順で使用される正規表現のこの記事は、より関連する正規表現EXCELの使用内容は、以前の記事のスクリプトのホームを検索してくださいまたは次の関連記事を閲覧し続けることは、スクリプトのホームをよりサポートすることを願っています