MATLAB Answers

How to check if string contains some special character?

123 views (last 30 days)
galaxy
galaxy on 15 Dec 2020
Commented: Image Analyst on 15 Dec 2020
Dear all,
I have a question that the best way to check if string contains:
  1. alphanumeric characters and underscore only (ex: stringabc: return 1, string abc: return 0)
  2. underscore at the beginning or the end (ex: _stringabc, stringabc_ : return 0)
  3. consecutive underscores (ex: string__abc : return 0)
  4. numbers at the beginning (ex: 012string_abc : return 0)
Thank you so much

Accepted Answer

Image Analyst
Image Analyst on 15 Dec 2020
For #1 you could use isstrprop().
For #2, see startsWith(str, '_') and endsWith(str, '_')
For #3, you can use find():
indexes = strfind(str, '__');
For #4 you could do something like
if str(1) >= '0' && str(1) <= '9'
% str starts with a numerical digit.
else
% str does not start with a numerical digit.
end
  2 Comments
Image Analyst
Image Analyst on 15 Dec 2020
Sorry, I don't know that language. But you can always (I think) use logical comparison like
itsAChar = str(1) >= 'a && str(1) <= 'z'
where you just put in the lowest unicode character and highest unicode character instead of a and z.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by