1

スクリプト ファイル内で次の For Next ループを見つけたいと考えています。次の正規表現を試しましたが、うまくいきません。すべての空白をスキップする方法がわかりません。For Next の中央のテキストも異なる場合があります。

正規表現...

/[fF]or [eE]ach.*[aA]s [lL]ist[iI]tem [iI]n .*\.[]tems\s*.*[nN]ext/

これを探して...

For Each item As ListItem In CheckBoxList1.Items
   If item.Selected = True Then
       MyList.Add(item.Text)
   End If
Next
4

3 に答える 3

2

For と Next の間の内容が異なる場合は、次のものを探していると思います。

/[fF]or[\S\s]*?[nN]ext/

これは、 For(次までのすべて:)Next のようなものに一致します。

あなたが説明するようにより多くの単語に一致する場合、私は次のようなものを使用します:

/[fF]or\s+?[eE]ach[\S\s]+?[aA]s\s+?[lL]ist[iI]tem\s+?[iI]n[\S\s]+?[iI]tems[\S\s]+?[nN]ext/

これについてより詳細な説明が必要な場合はお知らせください。ただし、以下のコメントの例では、単語の間にあることも保証されません。

于 2013-02-01T17:35:46.113 に答える
0

私はこれがそれをするだろうと思います: /[fF]or\s+[eE]ach.*?[aA]s\s+[sS]tring\s+[iI]n\s+.*?\.[]tems\s+.*?\s+[nN]ext/ 覚えておいてください.*?は可能な限り短い文字列に一致します。

于 2013-02-01T17:41:12.880 に答える
0

\s空白と一致します:

/[fF]or\s+[eE]ach.*[aA]s\s+[sS]tring\s+[iI]n\s+.*\.[]tems\s*.*[nN]ext/
于 2013-02-01T17:29:54.407 に答える