Clear Filters
Clear Filters

How to escape a portion of a string in regular expressions

16 views (last 30 days)
i want to dynamically create a regular expression from an input string. However i only want a small subset of expressions to be treated as such. Most of the input shall be treated as literal (e.g. dots '.' shall actually be treated as dots and not wildcards)
Is there a way to escape a whole group/substring when defining a regexp, or is the only way to escape all special chars, except the ones i want to keep, manually. If i need to escape everything manually, is there a syntax/keyword which gets me all special chars in the string so i can escape all of them?
Example (dots shall be treated as literal dots):
>> r = myfun('a.b.c','a.b.')
r = 1
>> r_myfun('aXb.c','a.b.')
r = []
Max Heimann
Max Heimann on 21 Mar 2022
Thats also great, but i need it to work in an earlier version than 2020.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 21 Mar 2022
regexptranslate with the 'wildcard' option, perhaps?
  1 Comment
Max Heimann
Max Heimann on 21 Mar 2022
This is great, thank you. I think i can work with this and use the 'escape' option. Afterwards i can look for the escaped versions of the patterns i want to match and de-escape them.

Sign in to comment.

More Answers (0)


Find more on Characters and Strings in Help Center and File Exchange




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!