Home Upgrade Search Memberlist Extras Hacker Tools Award Goals Help Wiki Contact

.NET 

Backspace correction

Hey, im working on a little fun prokject at the moment and i ran in 1 problem,
Its like a keylogger when it says: 14[back]23[back]35[back]
I want it to remove the [back] and the character before it, can someone help me out with this??? there might be also a problem when there is a situation like this: 123757[back][back][back] and the outcome has to be 123, can someone help me with this??
I suggest you stop copy and pasting the class you're using. It's not a matter of if anyone can do this, it's just the most simple string manipulation that you will ever do in your life.. Jesus.

PHP Code

<?php 
static void Main(string[] args)
      {
      
string message = "this message!";
      
Console.WriteLine(message.Remove(message.Length - 1));
      
Console.Read();
      } 

Just use that snippet in the handler for the backspace keycode.
(Apr 29, 2014 03:36 PM)tweety Wrote:  I suggest you stop copy and pasting the class you're using. It's not a matter of if anyone can do this, it's just the most simple string manipulation that you will ever do in your life.. Jesus.

PHP Code

<?php 
static void Main(string[] args)
      {
      
string message = "this message!";
      
Console.WriteLine(message.Remove(message.Length - 1));
      
Console.Read();
      } 

Just use that snippet in the handler for the backspace keycode.

I already fixed it with my own code :D thanks anyways
(Apr 29, 2014 04:17 PM)ShadyShadow Wrote:  I already fixed it with my own code :D thanks anyways

Do you mind posting your code aswell so people can learn from it ? I personally don't look forward to use but it might be helpful for others.
(Apr 29, 2014 04:36 PM)VPN Wrote:  Do you mind posting your code aswell so people can learn from it ? I personally don't look forward to use but it might be helpful for others.

Sure, I know there is a much easier way to do this but this one is just working fine for me,

Code
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
      If TextBox1.Text.Contains("1{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("1{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("2{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("2{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("3{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("3{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("4{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("4{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("5{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("5{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("6{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("6{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("7{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("7{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("8{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("8{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("9{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("9{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("0{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("0{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("a{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("a{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("b{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("b{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("c{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("c{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("d{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("d{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("e{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("e{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("f{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("f{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("g{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("g{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("h{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("h{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("i{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("i{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("j{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("j{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("k{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("k{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("l{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("l{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("m{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("m{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("n{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("n{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("o{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("o{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("p{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("p{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("q{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("q{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("r{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("r{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("s{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("s{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("t{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("t{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("u{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("u{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("v{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("v{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("w{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("w{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("x{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("x{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("y{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("y{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("z{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("z{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("A{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("A{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("B{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("B{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("C{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("C{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("D{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("D{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("E{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("E{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("F{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("F{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("G{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("G{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("H{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("H{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("I{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("I{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("J{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("J{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("K{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("K{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("L{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("L{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("M{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("M{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("N{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("N{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("O{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("O{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("P{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("P{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("Q{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("Q{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("R{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("R{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("S{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("S{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("T{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("T{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("U{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("U{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("V{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("V{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("W{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("W{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("X{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("X{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("Y{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("Y{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("Z{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("Z{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("@{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("@{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("!{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("!{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("#{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("#{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("?{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("?{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("%{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("%{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("${Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("${Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("({Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("({Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("){Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("){Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("-{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("-{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("={Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("={Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("+{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("+{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("/{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("/{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("\{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("\{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("[{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("[{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("]{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("]{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("{{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("{{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("}{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("}{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("*{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("*{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("&{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("&{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("^{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("^{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("<{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("<{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains(">{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace(">{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("_{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("_{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("€{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("€{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains(".{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace(".{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains(",{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace(",{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains(":{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace(":{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains(";{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace(";{Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains(" {Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace(" {Backspace}", "").Trim()
      ElseIf TextBox1.Text.Contains("{Backspace}") Then
      TextBox1.Text = TextBox1.Text.Replace("{Backspace}", "").Trim()
      End If
    End Sub
Here, try this instead.

Function:
Code
Function RemoveBackspaces(text As String, search As String) As String
      Dim Index, Count As Integer

      While True
      Index = text.IndexOf(search)
      Count = Math.Min(Index, 1)

      If Index = -1 Then
            Exit While
      End If

      text = text.Remove(Index - Count, search.Length + Count)
      End While

      Return text
    End Function

Usage:
Code
Dim Source As String = "[back]14[back][back][back][back]23135[back]7[back]"
      Dim Text As String = RemoveBackspaces(Source, "[back]")
Find each group of contiguous [back] tokens
Count how many there are ("n" of them) and remove them from the string
Remove the previous "n" characters from the string as well
(Apr 29, 2014 08:17 PM)6e756c6c Wrote:  Here, try this instead.

Function:
Code
Function RemoveBackspaces(text As String, search As String) As String
      Dim Index, Count As Integer

      While True
      Index = text.IndexOf(search)
      Count = Math.Min(Index, 1)

      If Index = -1 Then
      Exit While
      End If

      text = text.Remove(Index - Count, search.Length + Count)
      End While

      Return text
    End Function

Usage:
Code
Dim Source As String = "[back]14[back][back][back][back]23135[back]7[back]"
      Dim Text As String = RemoveBackspaces(Source, "[back]")
Thanks aeonhack, ur a great programmer, thanks for ur help the code from you is much easier :d
(Apr 29, 2014 08:17 PM)6e756c6c Wrote:  Here, try this instead.

Function:
Code
Function RemoveBackspaces(text As String, search As String) As String
      Dim Index, Count As Integer

      While True
      Index = text.IndexOf(search)
      Count = Math.Min(Index, 1)

      If Index = -1 Then
      Exit While
      End If

      text = text.Remove(Index - Count, search.Length + Count)
      End While

      Return text
    End Function

Usage:
Code
Dim Source As String = "[back]14[back][back][back][back]23135[back]7[back]"
      Dim Text As String = RemoveBackspaces(Source, "[back]")

I would consider creating a StringBuilder and use a StringBuilder.Remove instead of calling String.Remove. If you wants to mutate strings, you should use a mutable string instead of the normal static string, in order to gain speed and reduce memory usage, which is quite a must if you are mutating a large string.
https://github.com/Washi1337

"I'll tell you this UDP joke, and I don't care if you will get it or not."
(Apr 30, 2014 02:27 AM)Washi Wrote:  I would consider creating a StringBuilder and use a StringBuilder.Remove instead of calling String.Remove. If you wants to mutate strings, you should use a mutable string instead of the normal static string, in order to gain speed and reduce memory usage, which is quite a must if you are mutating a large string.

You know, you remind me on ident, he was always telling people to use strict and you are telling everyone to use string builder. I'm not saying that it's not the way of doing this, but it's funny how you are always saying, that, and people never get it.


Possibly Related Threads...
Thread / Author Replies Views Last Post
[.NET] by Fdsfd FdfdfAug 22, 2020 07:37 AM 1 228 Aug 22, 2020 07:37 AM
Last Post: Nines5
[.NET] by Fdsfd FdfdfJan 11, 2020 04:06 PM 4 289 Jan 11, 2020 04:06 PM
Last Post: #Kat
[Python] by datguy.devJan 14, 2019 10:05 AM 2 143 Jan 14, 2019 10:05 AM
Last Post: datguy.dev