Bird
Raised Fist0
PowerShellscripting~10 mins

-replace operator in PowerShell - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to replace 'cat' with 'dog' in the string.

PowerShell
'I have a cat' [1] 'cat' 'dog'
Drag options to blanks, or click blank then click option'
A-match
B-replace
C-like
D-contains
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-match' instead of '-replace' which only checks for a match.
Using '-like' which is for wildcard matching, not replacement.
2fill in blank
medium

Complete the code to replace all digits with '#' in the string.

PowerShell
'Phone: 123-4567' [1] '\d' '#'
Drag options to blanks, or click blank then click option'
A-like
B-match
C-contains
D-replace
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-match' which only tests for presence of pattern, not replacement.
Using '-like' which does not support regex.
3fill in blank
hard

Fix the error in the code to replace 'blue' with 'red' ignoring case.

PowerShell
'Blue sky' [1] '(?i)blue' 'red'
Drag options to blanks, or click blank then click option'
A-contains
B-match
C-replace
D-like
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-match' which does not replace text.
Using '-like' which does not support regex.
4fill in blank
hard

Fill both blanks to replace all vowels with '*' in the string.

PowerShell
'Hello World' [1] [2] '*'
Drag options to blanks, or click blank then click option'
A-replace
B[aeiouAEIOU]
C[0-9]
D-match
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-match' instead of '-replace' for replacement.
Using '[0-9]' which matches digits, not vowels.
5fill in blank
hard

Fill all three blanks to replace 'cat' or 'dog' with 'pet' in the string.

PowerShell
'I have a cat and a dog' [1] [2] [3]
Drag options to blanks, or click blank then click option'
A-replace
B'cat|dog'
C'pet'
D-match
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-match' which does not replace text.
Using a pattern without the '|' to match both words.

Practice

(1/5)
1. What does the PowerShell -replace operator do?
easy
A. It creates new variables.
B. It deletes files from the system.
C. It replaces parts of a string matching a pattern with new text.
D. It runs a loop over a list.

Solution

  1. Step 1: Understand the purpose of -replace

    The -replace operator is used to find text matching a pattern and replace it with new text.
  2. Step 2: Compare options with the operator's function

    Only It replaces parts of a string matching a pattern with new text. describes replacing parts of a string, which matches the operator's purpose.
  3. Final Answer:

    It replaces parts of a string matching a pattern with new text. -> Option C
  4. Quick Check:

    -replace changes text = A [OK]
Hint: Remember: -replace changes text parts by pattern [OK]
Common Mistakes:
  • Confusing -replace with file or variable commands
  • Thinking it modifies files or variables directly
  • Assuming it runs loops or deletes data
2. Which of the following is the correct syntax to replace 'cat' with 'dog' in the string 'I have a cat' using -replace?
easy
A. 'I have a cat' -replace('cat', 'dog')
B. 'I have a cat' -replace 'cat', 'dog'
C. 'I have a cat' -replace 'cat' 'dog'
D. 'I have a cat' replace 'cat' with 'dog'

Solution

  1. Step 1: Recall the syntax of -replace

    The correct syntax uses -replace followed by two strings separated by a comma: string -replace 'pattern', 'replacement'.
  2. Step 2: Check each option

    'I have a cat' -replace 'cat', 'dog' matches the correct syntax. Options A, B, and D have syntax errors or incorrect usage.
  3. Final Answer:

    'I have a cat' -replace 'cat', 'dog' -> Option B
  4. Quick Check:

    Correct syntax uses comma between pattern and replacement [OK]
Hint: Use comma between pattern and replacement in -replace [OK]
Common Mistakes:
  • Omitting the comma between pattern and replacement
  • Using parentheses like a function call
  • Writing 'replace' without the dash
3. What is the output of this PowerShell command?
'Hello 123' -replace '\d', '#'
medium
A. Hello ###
B. Hello 123
C. Hello \d
D. Error: Invalid pattern

Solution

  1. Step 1: Understand the pattern '\d'

    The pattern '\d' matches any digit character (0-9) in the string.
  2. Step 2: Apply replacement

    Each digit in '123' is replaced by '#', so '123' becomes '###'. The rest of the string remains unchanged.
  3. Final Answer:

    Hello ### -> Option A
  4. Quick Check:

    Digits replaced by '#' = Hello ### [OK]
Hint: Remember '\d' matches digits in regex for -replace [OK]
Common Mistakes:
  • Thinking '\d' is literal text, not a digit pattern
  • Expecting original string unchanged
  • Confusing escape sequences in regex
4. The following command throws an error. What is the problem?
'PowerShell' -replace 's',
medium
A. Missing replacement string after the comma
B. Pattern 's' is invalid
C. The string 'PowerShell' is not quoted
D. The -replace operator cannot be used on strings

Solution

  1. Step 1: Check the -replace syntax

    The -replace operator requires two arguments: a pattern and a replacement string, separated by a comma.
  2. Step 2: Identify the error

    The command ends with a comma but no replacement string, causing a syntax error.
  3. Final Answer:

    Missing replacement string after the comma -> Option A
  4. Quick Check:

    Both pattern and replacement needed [OK]
Hint: Always provide both pattern and replacement strings [OK]
Common Mistakes:
  • Leaving out the replacement string
  • Misunderstanding the comma separator
  • Assuming pattern alone is enough
5. You want to replace all vowels in the string 'Automation' with '*'. Which command correctly does this using -replace?
hard
A. 'Automation' -replace '[aeiou]', '*' -all
B. 'Automation' -replace 'aeiou', '*'
C. 'Automation' -replace '[aeiou]+' '*'
D. 'Automation' -replace '[aeiou]', '*'

Solution

  1. Step 1: Understand the pattern for vowels

    The pattern '[aeiou]' matches any single vowel character in the string.
  2. Step 2: Check the replacement command

    'Automation' -replace '[aeiou]', '*' uses the correct regex pattern and syntax to replace each vowel with '*'. 'Automation' -replace 'aeiou', '*' treats vowels as a literal string, not a pattern. 'Automation' -replace '[aeiou]+' '*' lacks the comma between pattern and replacement, causing a syntax error. 'Automation' -replace '[aeiou]', '*' -all uses an invalid '-all' flag.
  3. Final Answer:

    'Automation' -replace '[aeiou]', '*' -> Option D
  4. Quick Check:

    Use character class '[aeiou]' for vowels [OK]
Hint: Use square brackets for character sets in regex patterns [OK]
Common Mistakes:
  • Not using brackets for character sets
  • Trying to pass multiple arguments without comma
  • Adding unsupported flags like '-all'
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard