Skip to content

Commit 44307ba

Browse files
author
Andreas Conradi Nitschke
committed
finished exercise
1 parent f3ae9bf commit 44307ba

File tree

2 files changed

+19
-12
lines changed

2 files changed

+19
-12
lines changed

csharp-fundamentals-strings.Main/Core.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ public class Core
1414
//TODO: 1. The brokenUrl member above contains an invalid URL. There's a z instead of an s in the protocol (httpz instead of https).
1515
// Using the `replace` method on brokenUrl, set the fixedUrl member below to the correct value.
1616
// https://learn.microsoft.com/en-us/dotnet/api/system.string.replace?view=net-7.0
17-
public string fixedUrl => string.Empty;
17+
public string fixedUrl => brokenUrl.Replace("httpz","https");
1818

1919

2020
// Here's a documentation link for all string methods, use it to figure out how to complete the rest of these requirements:
@@ -23,27 +23,27 @@ public class Core
2323

2424
//TODO: 2. There are currently some upper case characters in the URL. Using an appropriate string method on the fixedUrl member above,
2525
// set the value of lowerCasedUrl.
26-
public string lowerCasedUrl => string.Empty;
26+
public string lowerCasedUrl => fixedUrl.ToLower();
2727

2828

2929
//TODO: 3. There is still white space on both ends of the URL! Use the appropriate string method to trim that white space
3030
// and set the value of the url member below
31-
public string url => string.Empty;
31+
public string url => lowerCasedUrl.Trim();
3232

3333

3434
//TODO: 4. Using the appropriate string method on url, set the value of the protocol member below
35-
public string protocol => string.Empty;
35+
public string protocol => url.Substring(0,5);
3636

3737

3838
//TODO: 5. Using the appropriate string method on url, set the value of the domain member below
39-
public string domain => string.Empty;
40-
39+
//public string domain => url.Split('.')[0].Substring(6, url.Split('.')[0].Length) + url.Split('.')[1] + url.Split('.')[2];
40+
public string domain => url.Split('/')[2];
4141

4242
//TODO: 6. Set the length member below to the length of the url member
43-
public int length => 0;
43+
public int length => url.Length;
4444

4545

4646
//TODO: 7. Using concatenation and existing members, set the faqUrl member below to the faq page of the boolean website
47-
public string faqUrl => string.Empty;
47+
public string faqUrl => protocol + "://" + domain + "/faq";
4848
}
4949
}

csharp-fundamentals-strings.Main/Extension.cs

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public StringBuilder one()
4242

4343
// 1. Using the sb variable above, add "Hello, world!" to the StringBuilder
4444
// WRITE YOUR CODE BETWEEN THIS LINE...
45-
45+
sb.Append("Hello, world!");
4646

4747

4848
// ...AND THIS LINE
@@ -57,8 +57,13 @@ public StringBuilder two()
5757
// 1. Using the sb variable above, add "Hello, world!" to the StringBuilder
5858
// 2. After adding the message, use an appropriate StringBuilder method to reverse it
5959
// WRITE YOUR CODE BETWEEN THIS LINE...
60+
sb.Append("Hello, world!");
6061

61-
62+
for (int i = sb.Length - 1; i >= 0; i--)
63+
{
64+
sb.Append(sb.ToString()[i]);
65+
sb.Remove(i, 1);
66+
}
6267

6368
// ...AND THIS LINE
6469

@@ -72,7 +77,8 @@ public StringBuilder three()
7277
// 1. Using the sb variable above, add "Hello, world!" to the StringBuilder
7378
// 2. After adding the message, remove the comma.
7479
// WRITE YOUR CODE BETWEEN THIS LINE...
75-
80+
sb.Append("Hello, world!");
81+
sb.Replace(",", "");
7682

7783

7884
// ...AND THIS LINE
@@ -87,7 +93,8 @@ public StringBuilder four()
8793
// 1. Using the sb variable above, add "Hello, world!" to the StringBuilder
8894
// 2. After adding the message, replace the word "world" with the word "C#"
8995
// WRITE YOUR CODE BETWEEN THIS LINE...
90-
96+
sb.Append("Hello, world!");
97+
sb.Replace("world", "C#");
9198

9299

93100
// ...AND THIS LINE

0 commit comments

Comments
 (0)