Dim read As New System.IO.StreamReader("C:\test.txt", System.Text.Encoding.GetEncoding("shift_jis")) Dim text As String = read.ReadToEnd() If System.Text.RegularExpressions.Regex.IsMatch(text, ".*//.*") Then 'コメント有無チェック Dim lst As New List(Of String)() '読込みデータ格納用 Dim stm As New StringReader(text) '1行づつ読むためのStringReader Dim strLine As String '行データ格納用 strLine = stm.ReadLine() 'とりあえず1行読む Do While strLine IsNot Nothing Dim targetLine As String '切り抜き用変数 '//の位置を取得 Dim pos As Integer = strLine.IndexOf("//") If pos >= 0 Then '//が存在するならば、そこまでの文字列を切り抜く。 targetLine = strLine.Substring(0, pos) lst.Add(targetLine) Else '//が存在しないならば、読み込んだ行全体が書き込む対象となる。 targetLine = strLine lst.Add(targetLine) End If '次の行をよむ strLine = stm.ReadLine Loop '格納したデータを改行コードで結合 text = String.Join(vbCrLf, lst.ToArray) End If textbox1.text = text '結果をTextBox1へ表示