#CommandLineArgs: "C:\Users\H\Documents\B4A Samples\B4AServer"
Sub Process_Globals
End Sub
Sub AppStart (Args() As String)
Dim dir As String = Args(0)
Dim rx As RegexBuilder
rx.Initialize.StartNonCapture.AppendEscaped(".bas").EndNonCapture.AppendOr.StartNonCapture.AppendEscaped(".b4").Append(rx.CharAny).EndNonCapture
rx.AppendEndString
For Each f As String In File.ListFiles(dir)
If Regex.Matcher2(rx.Pattern, Regex.CASE_INSENSITIVE, f).Find Then
RemoveComments(dir, f)
End If
Next
End Sub
Sub RemoveComments (Dir As String, FileName As String)
Dim NewLines As List
NewLines.Initialize
Dim lines As List = File.ReadList(Dir, FileName)
Dim rx As RegexBuilder
rx.Initialize.AppendStartString.Append(rx.CharWhitespace).AppendZeroOrMore.AppendEscaped("'")
For Each line As String In lines
If Regex.Matcher(rx.Pattern, line).Find Then
Continue
End If
NewLines.Add(line)
Next
File.WriteList(Dir, FileName, NewLines)
Log($"File: ${FileName}, removed ${lines.Size - NewLines.Size} lines."$)
End Sub