行の先頭から始まり、空白の最初の遭遇で終わる、文字列から最初の 3 ~ 13 文字を引き出す必要があります。
次のコードは動作しません。「無効な手順」エラーがよく発生します。パターンを変更するとエラーが解消されることがありますが、必要な一致が得られることはありません。
助けてください。
編集: このパターン "/[^ ]*/" を見つけましたが、これは私がやりたいことを実行するはずですが (私は思う)、コードを実行すると strOut = match.SubMatches(0) 行でエラーが発生します。理由はありますか?
' Set the pattern to find the data we would like to test;
re_Name.Pattern = "^xe\-1/1/1"
re_Name.IgnoreCase = True
re_Name.Multiline = True
vLines = Split(strNames, vbcrlf)
For Each strLine in vLines
Set matches = re_Name.Execute(strLine)
For Each match in matches
strOut = match.SubMatches(0)
MsgBox strOut
Next
Next
私が探しているものの例:
xe-0/1/1
xe-0/3/2.0
ge-11/2/1
ae0
ae0.3156
コンテキストでの好みの例:
xe-0/0/0 up up xxxxxxxxxxJxx0/0xToxBBxxx1 x;
ae0.202 up up ;xxxxxx1;xxxxxxxxixxxxx
ge-11/3/0.0 up down Rxxxxxxx RESERVEDing