A simple solution I'm sure, but I can't find it anywhere. I have a text input that must contain both numbers and letters in order for the user to proceed. How do I check for this input using an If statement? I know how to do it for numbers or text only, but not both.
Thanks for the help in advance!
Great, thanks for letting me know. A potentially useful idea for the future maybe!
@Anonymous
No, there is not a masked input control currently. So, you are limited to validating the control only.
The Match functions will be the best options for validating the contents. But, there is nothing that would "force" or "restrict" a user to entering 3 letter and 8 numbers.
@RandyHayes @Pstork1 thank you both for your help! I will try this also, will be helpful for others deciphering the code in the future. Out of curiosity, does PowerApps have a masked text input option? I have researched this but have found no possible answers. The text input I have requires 3 letters first and then 8 numbers, I was using this check as a plausible workaround.
Thanks again for your help!
Actually, the name is a bit deceiving - even though it is "Multiple" it is defined as "one or more"
So, "A1" would match, as would "AA11"
@RandyHayes I thought about that one, but won't that require more than one character and digit?
@Anonymous
Also just to add a little, you can shorten your patterns by using the predefined patterns in PowerApps.
So, this formula would also provide the results and perhaps be a little more readable.
IsMatch(TextInput1.Text, MultipleLetters & MultipleDigits)
Happy PowerApp'ing
Thank you, just what I was looking for.
Probably the easiest way would be to use the IsMatch() function and a regex expression.
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/functions/function-ismatch
Try the following for the Regex pattern
(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)
So you could put something like this in the Color property of the text block
If(IsMatch(TextInput4.Text,"(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)"),Black,Red)
If the text entry has at least one alpha and one digit then it will be black otherwise it will be red
Hi @Anonymous
You can do this with a regular expression. Here's the formula you can add to a label.
If(IsMatch(TextInput1.Text, "([A-Za-z]+[0-9]|[0-9]+[A-Za-z])[A-Za-z0-9]*"),
"Input OK",
"Input must contain letters and numbers"
)
WarrenBelz
146,660
Most Valuable Professional
RandyHayes
76,287
Super User 2024 Season 1
Pstork1
66,004
Most Valuable Professional