掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
正規表現で括弧に囲まれた値を複数得たい (ID:140663)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> VBで正規表現を使おうとしています。 どの正規表現ライブラリをお使いでしょうか? フリーソフトの JRE32.DLL、VBScript の RegExp オブジェクト、 .NET の Regex クラスなど、幾つかの候補がありますよね。 > 括弧で囲まれたAAAAとBBBBとCCCCを取得する正規表現はどうなりますか? 「VBScript + RegExp オブジェクト」だとしたら、こんな感じ。 source = "asda(AAAA)jspfidjfpsd(BBBB);padpo;mdas(CCCC)adsdas" Set re = New RegExp re.Global = True re.Pattern = "\([^\(\)]*(?=\))" s = "" For Each m In re.Execute(source) s = s & Mid(m.Value, 2) & vbCrLf Next MsgBox s 「.NET の Regex クラス」だとしたら、こんな感じ。 Option Strict On Option Explicit On Imports System Imports System.Text Imports System.Text.RegularExpressions Module Module1 Sub Main() Dim source As String = "asda(AAAA)jspfidjfpsd(BBBB);padpo;mdas(CCCC)adsdas" Dim r As New Regex("(?<=\()[^\(\)]*(?=\))", RegexOptions.Multiline) For Each m As Match In r.Matches(source) Console.WriteLine(m.Value) Next End Sub End Module
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.