How can I check if it is a string?
11 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
x = str2double(get(handles.demandValue,'String'));
y = str2double(get(handles.generationValue,'String'));
z = x - y;
set(handles.generationBUS2,'String',num2str(z));
tf = isString(x)
if tf == 1
f = errordlg('Dont write anything except number!','Error!');
return
end
Hi,
I have created a small GUIDE project on my own and I want to check if the user input contains any words and stop the execution. I have tried to write the tf = isStringpart but the tf always returns 0. x and y variables are created on static text.
Thanks.
2 commentaires
Matt J
le 3 Jan 2022
Because x is the output of str2double(), you know it will always be a double, and therefore it will never be a string.
Réponse acceptée
Plus de réponses (1)
Image Analyst
le 3 Jan 2022
Try the lettersPattern() function:
pat = lettersPattern creates a pattern that matches text composed of one or more of letters. lettersPattern is Unicode tolerant.
or digitsPattern():
pat = digitsPattern creates a pattern that matches text composed of one or more digit characters. digitsPattern is Unicode tolerant.
Using those (there are other pattern functions by the way), you can determine whether the user entered letters, numerical digits, or a combination of them into the edit text box.
0 commentaires
Voir également
Catégories
En savoir plus sur Characters and Strings 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!