tags:

views:

93

answers:

8

How do i change a string value of

http://host/index.php?p=page 

to

http://host/index.php?p=
+1  A: 
string s=@"http://host/index.php?p=page";

s=@"http://host/index.php?p=";
Ian Jacobs
+2  A: 

Not sure, since you aren't being to clear here, but this does what you ask.

string value = @"http://host/index.php?p=page";
value = @"http://host/index.php?p=";
gmcalab
A: 

Also, if you're lookin to "parameterize" the string.

String.Format("http://host/index.php?p={0}", variableName);
Jack Marchetti
typo: missing quotation-mark!
Andreas Niedermair
+1  A: 
string s = @"http://host/index.php?p=page";
s = s.Replace("page", "");

Or, more seriously, you probably want:

string s = @"http://host/index.php?p=page";
s = s.Substring(0, s.LastIndexOf('=') + 1);
Jacob G
+5  A: 

That is not possible.

In .NET strings are immutable, which means that you can't change a string.

What you can do is to create a new string value from the original, for example by copying all of the string except the last four characters:

url = url.Substring(0, url.Length - 4);
Guffa
+1 for the "strings are immutable" comment...
Reed Copsey
+1  A: 

This is how I understood your question, will remove anything after the last "="

string s = @"http://host/index.php?p=page";
s = s.Remove(s.LastIndexOf("=")+1);
Oskar Kjellin
+1  A: 

If you want to strip off everything after the first "=" character:

string s = @"http://host/index.php?p=page"
s = s.Split('=')[0] + "=";
Reed Copsey
+1  A: 

Here's one more way:

String oldString = "http://host/index.php?p=page";
String newString = oldString.Substring(0, oldString.IndexOf("?p=") + 3);
Romany Saad