# Separating Variable From Operator

Hi,

I have a variable like :

strFormula = "abc+cde-fgh*1"

I want to separate them into 2 stringbuilder or other variable:

strVariable1 = abc,cde,fgh

strVariable2 = +,-,*

How could I do it?

Thank you.
LVL 1
###### Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Commented:
try some thing like this
``````  Dim strFormula, strVariable1, strVariable2 As String
strFormula = "abc+cde-fgh*1"
strVariable1 = ""
strVariable2 = ""
If (strFormula.Contains("+")) Then
strFormula = strFormula.Replace("+", ",")
If (strVariable2 = "") Then
strVariable2 = "+"
Else
strVariable2 = strVariable2 + "," + "+"
End If
End If
If (strFormula.Contains("-")) Then
strFormula = strFormula.Replace("-", ",")
If (strVariable2 = "") Then
strVariable2 = "-"
Else
strVariable2 = strVariable2 + "," + "-"
End If
End If
If (strFormula.Contains("*")) Then
strFormula = strFormula.Replace("*", ",")
If (strVariable2 = "") Then
strVariable2 = "*"
Else
strVariable2 = strVariable2 + "," + "*"
End If
End If
strVariable1 = strFormula

Response.Write(strVariable1)
Response.Write(strVariable2)
``````
0
Author Commented:
Hi pratima_mcs,

Is there any other simple way?

You know operator  more than "+-*"

May be using regular expression?

Thank you.

0
Commented:
yu need to add
If (strFormula.Contains("+")) Then
strFormula = strFormula.Replace("+", ",")
If (strVariable2 = "") Then
strVariable2 = "+"
Else
strVariable2 = strVariable2 + "," + "+"
End If
End If

for each operator
0
High School Computer Science, Computer Applications, and Mathematics TeachersCommented:
Maybe something like this will work for you?
``````    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim strFormula As String = "abc+cde-fgh*1"

Dim strVariable1 As New System.Text.StringBuilder
Dim strVariable2 As New System.Text.StringBuilder
For Each C As Char In strformula
If Char.IsLetterOrDigit(C) Then
strVariable1.Append(C)
Else
strVariable1.Append(",")
strVariable2.Append(IIf(strVariable2.Length = 0, C, "," & C))
End If
Next

Label1.Text = strVariable1.ToString
Label2.Text = strVariable2.ToString
End Sub
``````
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Author Commented:
Hi Idle_Mind,

I think your code is what I am looking for.

Thank you very much for your help.
0
###### It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic.NET

From novice to tech pro — start learning today.