Use regexp to find all letters in string except one
32 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Assen Koev
le 24 Jan 2024
Commenté : Stephen23
le 24 Jan 2024
Is it possible to build a regexp search expression with an "intersection" of the default sets?
Simple conceptual example is the following:
Suppose I have a char 'abcd1 23 ,.@_'. (the char can include ANY character, not just the example ones)
I would like to return all LETTERS only except for 'd'.
In other words I need the search expression EXPR to be "\w except for d" or an intersection of \w and [^d]
Code example:
inputText = 'abcd1 23 ,.@_';
EXPR = ?
result = regexp(inputText,EXPR,'match')
{'a'} {'b'} {'c'}
Thank you
3 commentaires
Stephen23
le 24 Jan 2024
"constructions like the one in the link here is not possible?"
There are no such constructions shown in the MATLAB documentation:
Réponse acceptée
Sulaymon Eshkabilov
le 24 Jan 2024
This how it can be done:
inputText = 'abcd1 23 ,.@_';
EXPR = '[a-cA-Ce-zA-Z]';
result = regexp(inputText, EXPR, 'match');
disp(result);
0 commentaires
Plus de réponses (1)
Anton Kogios
le 24 Jan 2024
Modifié(e) : Anton Kogios
le 24 Jan 2024
I copied your question (with no edits) into the MATLAB AI Chat Playground, and this was the response:
Yes, it is possible to build a regexp search expression with an "intersection" of the default sets in MATLAB. To return all letters except for 'd', you can use the following expression:
inputText = 'abcd1 23 ,.@_';
EXPR = '[a-ce-zA-Z]';
result = regexp(inputText, EXPR, 'match')
The expression `[a-ce-zA-Z]` matches any letter from 'a' to 'c' and from 'e' to 'z' (both lowercase and uppercase). The result will be a cell array containing the matched letters: `{'a', 'b', 'c'}`.
I think that there is a small error in that EXPR should be '[a-ce-zA-CE-Z]' to get both lowercase and uppercase if you want it. I would also note that using \w as you mentioned would also include numbers (not just letters).
Hope this helps!
0 commentaires
Voir également
Catégories
En savoir plus sur Get Started with MATLAB dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!