Bird
Raised Fist0
MATLABdata~5 mins

Regular expressions in MATLAB - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of regular expressions in MATLAB?
Regular expressions in MATLAB are used to find, match, and manipulate text patterns within strings. They help automate searching and editing tasks.
Click to reveal answer
beginner
Which MATLAB function is commonly used to find matches of a regular expression in a string?
The regexp function is used to find matches of a regular expression in a string and returns the starting indices of matches.
Click to reveal answer
beginner
What does the regular expression pattern \d+ match in MATLAB?
The pattern \d+ matches one or more digits in a string. Here, \d means any digit (0-9), and + means one or more times.
Click to reveal answer
intermediate
How do you extract the actual matched text using regexp in MATLAB?
Use the 'match' option with regexp like this: matches = regexp(str, pattern, 'match'); This returns the matched substrings themselves.
Click to reveal answer
intermediate
What is the difference between regexp and regexpi in MATLAB?
regexp is case-sensitive when matching patterns, while regexpi performs case-insensitive matching.
Click to reveal answer
Which MATLAB function returns the starting indices of matches for a regular expression?
Aregexprep
Bstrfind
Cregexp
Dregexpi
What does the regular expression ^abc match in a string?
AAny string containing 'abc'
B'abc' at the start of the string
C'abc' at the end of the string
DAny string ending with 'abc'
How do you perform a case-insensitive regular expression match in MATLAB?
AUse <code>regexpi</code>
BUse <code>strfind</code>
CUse <code>regexp</code> with 'ignorecase' option
DUse <code>regexprep</code>
What does the pattern \s represent in MATLAB regular expressions?
AAny digit
BAny special character
CAny letter
DAny whitespace character
Which function would you use to replace text matching a regular expression in MATLAB?
Aregexprep
Bregexp
Cregexpi
Dstrfind
Explain how to find and extract all numbers from a string in MATLAB using regular expressions.
Think about how to match digits and get the actual text matched.
You got /4 concepts.
    Describe the difference between regexp and regexpi in MATLAB and when you might use each.
    Consider if you want to match text exactly or ignore letter case.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the MATLAB function regexp do?
      easy
      A. Searches for text patterns in strings
      B. Replaces text in strings
      C. Sorts arrays numerically
      D. Calculates the length of a string

      Solution

      1. Step 1: Understand the purpose of regexp

        The regexp function in MATLAB is used to find matches of a pattern within text.
      2. Step 2: Compare with other functions

        regexprep replaces text, but regexp only searches for patterns.
      3. Final Answer:

        Searches for text patterns in strings -> Option A
      4. Quick Check:

        regexp = search function [OK]
      Hint: Remember: regexp = search, regexprep = replace [OK]
      Common Mistakes:
      • Confusing regexp with regexprep
      • Thinking regexp modifies strings
      • Mixing regexp with numeric functions
      2. Which of the following is the correct syntax to find all digits in the string 'abc123' using regexp?
      easy
      A. regexp('abc123', '\\d+')
      B. regexp('abc123', '\\w+')
      C. regexp('abc123', '\\s+')
      D. regexp('abc123', '\\D+')

      Solution

      1. Step 1: Identify the pattern for digits

        In regular expressions, \d matches digits, and + means one or more.
      2. Step 2: Check the options

        regexp('abc123', '\\d+') uses \\d+ which correctly matches one or more digits. Others match word characters, spaces, or non-digits.
      3. Final Answer:

        regexp('abc123', '\\d+') -> Option A
      4. Quick Check:

        Digits = \d+ pattern [OK]
      Hint: Use \\d+ to match one or more digits [OK]
      Common Mistakes:
      • Using \w+ which matches letters and digits
      • Using \s+ which matches spaces
      • Using \D+ which matches non-digits
      3. What is the output of the following MATLAB code?
      str = 'cat bat rat';
      matches = regexp(str, '\\b\w{3}\b', 'match');
      disp(matches);
      medium
      A. ['cat', 'bat']
      B. ['catbat', 'rat']
      C. [] (empty cell array)
      D. ['cat', 'bat', 'rat']

      Solution

      1. Step 1: Understand the pattern '\\b\\w{3}\\b'

        The pattern matches word boundaries \\b around exactly 3 word characters \\w{3}.
      2. Step 2: Apply pattern to string

        The string has three 3-letter words: 'cat', 'bat', and 'rat'. All match the pattern.
      3. Final Answer:

        ['cat', 'bat', 'rat'] -> Option D
      4. Quick Check:

        Three 3-letter words matched [OK]
      Hint: \b\w{3}\b matches exactly 3-letter words [OK]
      Common Mistakes:
      • Ignoring word boundaries and matching partial words
      • Expecting concatenated matches
      • Confusing \w with digits only
      4. The following MATLAB code is intended to replace all digits in str with '#' but does not work as expected:
      str = 'Room 101';
      newStr = regexprep(str, '\d', '#');
      disp(newStr);
      What is the error and how to fix it?
      medium
      A. Pattern should be '\\d+' to replace all digits at once
      B. No error; code works correctly
      C. Pattern should be '\\D' to match digits
      D. Use regexp instead of regexprep

      Solution

      1. Step 1: Analyze the regexprep usage

        The pattern '\\d' matches any single digit, and regexprep replaces all occurrences by default.
      2. Step 2: Check the output

        Replacing each digit with '#' in 'Room 101' results in 'Room ###', which is expected.
      3. Final Answer:

        No error; code works correctly -> Option B
      4. Quick Check:

        regexprep replaces all matches by default [OK]
      Hint: regexprep replaces all matches even with single-digit pattern [OK]
      Common Mistakes:
      • Thinking \d replaces only one digit total
      • Using \D which matches non-digits
      • Confusing regexp with regexprep
      5. You have a cell array of strings: {'abc123', 'def456', 'ghi789'}. How do you extract only the numeric parts from each string using MATLAB regular expressions?
      hard
      A. Use regexp(cellArray, '\\d+', 'match')
      B. Use regexp(cellArray, '\\w+', 'match')
      C. Use regexprep(cellArray, '\\D', '')
      D. Use regexprep(cellArray, '\\d+', '')

      Solution

      1. Step 1: Understand the goal

        We want to keep only digits, removing all non-digit characters.
      2. Step 2: Choose the correct function and pattern

        regexprep replaces patterns. Using \\D matches non-digits, so replacing them with empty string keeps only digits.
      3. Final Answer:

        Use regexprep(cellArray, '\\D', '') -> Option C
      4. Quick Check:

        Remove non-digits with \D pattern [OK]
      Hint: Replace non-digits (\D) with empty string to keep digits [OK]
      Common Mistakes:
      • Using regexp with 'match' returns cell arrays, not strings
      • Replacing digits instead of non-digits
      • Using \w+ which matches letters and digits
      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