Compare strings which contains the same pattern by ignoring case sensitivity and some expressions like underscores

9 views (last 30 days)
Hi,
I have 2 cell array which consist of different strings. I want to find the corresponding strings which contains the same pattern but meanwhile I want to ignore case sensitivity and some expressions like underscores, spaces and hyphen.
Normally with:
exp = '[^ \f\n\r\t\v.,_-]*';
regexpi(CellArray1{i,:},CellArray2,'match');
does the job partly but it compares the strings for whole and if it contains, it does not correspond.
Is there any way to compare strings which contains the same pattern by ignoring the case sensitivity and some expressions?

Accepted Answer

埃博拉酱
埃博拉酱 on 7 Jul 2022
You might remove those expressions to be ignored and unify the strings all to lowercase before doing actual comarison.
  1 Comment
Ahmet Hakan UYANIK
Ahmet Hakan UYANIK on 7 Jul 2022
Then seems like there are no function which does that job in a single line of command.
Thank you for the suggestion. I have proceeded as you proposed.

Sign in to comment.

More Answers (1)

Abderrahim. B
Abderrahim. B on 7 Jul 2022
Edited: Abderrahim. B on 7 Jul 2022
Unify strings first using eiither upper or lower.
% learn about the functions
doc upper
doc lower
% Examples
upper("abcd")
ans = "ABCD"
lower(ans)
ans = "abcd"

Categories

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!