Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to get the characters of a text-box after a newline in VB.Net
    primarykey
    data
    text
    <p>Right now I am building a scripting language (EngineScript). Currently you can only type a single command/function (IE: <code>sout "Hello world"</code>) but I want to expand it.</p> <p>So I was wondering whether you guys knew any code to get the characters typed after a newline into a separate variable in VB2012.Net. Thanks :-)</p> <p>Here is my code: </p> <pre><code>Public Class Form1 Dim strvar0 As String Dim strvar1 As String Dim strvar2 As String Dim strvar3 As String Dim numvar As Integer Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim first4Chars As String = TextBox1.Text.Substring(0, 4) Dim restOfChars As String = TextBox1.Text.ToString.Substring(5) Select Case first4Chars Case "sout" Select Case restOfChars Case "box:str0" TextBox2.Text = strvar0 &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf &amp; "COMMAND //sout\\ has been successfully used" Case Else TextBox2.Text = restOfChars &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf &amp; "COMMAND //sout\\ has been successfully used" End Select Case "str0" strvar0 = restOfChars Case Else TextBox2.Text = "Error".ToString End Select End Sub Private Sub HelpToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles HelpToolStripMenuItem.Click Dim a As New Help End Sub Private Sub RunToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RunToolStripMenuItem.Click Button1.PerformClick() End Sub End Class </code></pre> <p>...I am doing this is a Windows form</p> <p>@Jamby when I use your code:</p> <pre><code>Public Class Form1 Dim strvar0 As String Dim strvar1 As String Dim strvar2 As String Dim strvar3 As String Dim numvar As Integer Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click For Each Line In TextBox1.Text.Split(vbNewLine) Dim first4Chars As String = TextBox1.Text.Substring(0, 4) Dim restOfChars As String = TextBox1.Text.ToString.Substring(5) Select Case first4Chars Case "sout" Select Case restOfChars Case "box:str0" TextBox2.Text = strvar0 &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf &amp; "COMMAND //sout\\ has been successfully used" Case Else TextBox2.Text = restOfChars &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf &amp; "COMMAND //sout\\ has been successfully used" End Select Case "str0" strvar0 = restOfChars Case "exit" Me.Close() Case "lofi" Select Case restOfChars Case "box:str0" Process.Start(strvar0) Case Else Process.Start(restOfChars) End Select Case "inet" Process.Start("iexplore.exe" + restOfChars) Case Else TextBox2.Text = "Error".ToString End Select Next TextBox1.Clear() End Sub Private Sub HelpToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles HelpToolStripMenuItem.Click Dim a As New Help End Sub Private Sub RunToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RunToolStripMenuItem.Click Button1.PerformClick() End Sub Private Sub MenuStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles MenuStrip1.ItemClicked End Sub End Class </code></pre> <p>It does not generate errors but when I type</p> <p><code>sout Hello</code> newline <code>sout World</code></p> <p>the following should output from my output window:</p> <pre><code>Hello COMMAND //sout\\ has been successfully used World COMMAND //sout\\ has been successfully used </code></pre> <p>But instead this happens:</p> <pre><code>Hello sout World COMMAND //sout\\ has been successfully used </code></pre> <p>Help!!!</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload