ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / Developing an application or website / Controls, windows and pages / Input and display masks
  • Overview
  • Default display masks
  • Preset masks
  • Text masks
  • "Text and digit" masks
  • "Computer" masks
  • "Phone number" masks
  • "Company/Bank" masks
  • "Social security number" masks
  • "Zip code" masks
  • Custom input masks
  • File input mask
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Overview
WINDEV, WEBDEV and WINDEV Mobile propose two types of masks:
  • the input masks that define the characters that can be typed in the controls found in a window or in a page. Sometimes, these masks can also be used to modify the case (uppercase/lowercase characters) of the values assigned to the window controls or to the page controls by programming.
  • the display masks that define the characters that can be printed in the controls found in a report.
Default display masks
In a window, a page or a report, no input mask (or display mask) is associated by default with a text control. You can:
  • select a preset input mask.
  • create a custom input mask.
Remark: If the control is linked to an item, the value saved in the file will be the displayed value.
Preset masks
The following masks are proposed by WINDEV, WINDEV Mobile or WEBDEV (in the order in which they appear in the window editor or in the page editor):

Text masks

Selected maskEffects during the input in the controlEffects during the assignment through programmingExamples
NoneNo input maskNo display mask
1st letter in uppercaseIf the first character typed is a letter, this letter will be displayed in uppercase.
All the characters can be typed.
If the first character typed is a letter, this letter will be displayed in uppercase.
All the characters are allowed.
  • Ave5a8B
  • J4-h89
All in uppercase charactersAll the letters will be displayed in uppercase.
All the characters can be typed.
All the letters will be displayed in uppercase.
All the characters are allowed.
  • TE_V4L
  • 5JU6.5
All in lowercase charactersAll the letters will be displayed in lowercase.
All the characters can be typed.
All the letters will be displayed in lowercase.
All the characters are allowed.
  • te_v4l
  • 5ju6.5
LettersOnly the letters (uppercase or lowercase) can be typed.All the characters are allowed.
  • GTfrDs
  • ojTFEsD
Uppercase lettersOnly the letters can be typed. These letters will be automatically displayed in uppercase.
Remark: Two types of masks are available: with or without accented characters.
All the letters will be in uppercase.
All the characters are allowed.
  • GTREZS
  • POKUAS

"Text and digit" masks

Selected maskEffects during the input in the controlEffects during the assignment through programmingExamples
DigitsOnly the digits and the ' ' character (space) can be typed.All the characters are allowed.
  • 49 862
  • 695372
Letters + digitsOnly the letters (uppercase or lowercase) and the digits can be typed.All the characters are allowed.
  • hT54Ij
  • T96Hgu
Uppercase letters + digitsOnly the letters and the digits can be typed.
The letters will automatically be displayed in uppercase.
All the letters will be displayed in uppercase.
All the characters are allowed.
  • HT86I6
  • 97J8DR
Letter then Letter/Digit
(WINDEV and WINDEV Mobile only)
The first character is necessarily a letter (uppercase or lowercase), then the other characters are letters (uppercase or lowercase) and/or digits.All the characters are allowed.
  • j45B79c
  • Pr4f9V
Letter then Letter (CAP)/Digit
(WINDEV and WINDEV Mobile only)
The first character is necessarily a letter in uppercase, then the other characters are letters in uppercase and/or digits.All the characters are allowed.
  • G215FK
  • MN89R1
Numbers,.+-' 'Only the following elements can be typed:
  • the digits.
  • the characters:
    • ', ' (comma),
    • '.' (dot),
    • '+' (plus sign),
    • '-' (minus sign),
    • ' ' (space).
All the characters are allowed.
  • +586.21
  • 251.597,58
Roman numeralOnly the letters used for the roman numerals can be typed.All the characters are allowed.
  • MMIX

"Computer" masks

Selected maskEffects during the input in the controlEffects during the assignment through programmingExamples
Name and full path of a fileAll the characters can be typed.
up to 260 characters.
All the characters are allowed.
up to 260 characters.
  • C:\MyDoc\File.DOC
  • \\Post4\Test.TXT
Name of a file (without its path)All the characters can be typed.
up to 260 characters.
All the characters are allowed.
up to 260 characters.
  • File.DOC
  • Test.TXT
Email address (syntactic validation only)Any character can be entered except:
  • '(' (opening bracket),
  • ')' (closing bracket),
  • '<' (less than),
  • '>' (greater than),
  • ', ' (comma),
  • ';' (semicolon),
  • ':' (colon),
  • '\' (backslash),
  • ' " ' (quote),
  • ' ' (space).
The '@' character can be found once only.
All the characters are allowed.
  • Julia@yahoo.com
  • Anthony@hotmail.com
Email address (strict validation of domain)Same restrictions as for the syntactic check of an email address.
Checks the syntax of the email address as well as the TLD (Top Level Domain) in relation to the list of existing TLDs (see EmailCheckAddress).
All the characters are allowed.
  • Julia@yahoo.com
  • Anthony@hotmail.com
Multiple email addresses (syntactic validation only)Same restrictions as for the syntactic check of an email address. The addresses must be separated by the ";" character.All the characters are allowed.
  • Julia@yahoo.com;Antoine@hotmail.com
Multiple email addresses (strict validation of domain)Same restrictions as for the strict check of an email address. The addresses must be separated by the ";" character.All the characters are allowed.
  • Julia@yahoo.com;Antoine@hotmail.com
IPv4 addressOnly the digits and the dots can be typed.All the characters are allowed.
  • 192.168.0.1
IPv6 addressOnly the digits and the ":" characters can be typed.All the characters are allowed.
  • 0012:3153::5b32
MAC addressOnly the digits, the letters and the ":" characters can be typed.All the characters are allowed.
  • 01:23:45:67:89:ab
128-bit UUID
(no spacing)
Only digits and letters can be typed.
AndroidAndroid Widget Not available.
All the characters are allowed.
  • 29ea9852143a46a4842aca811e5f8597
128-bit UUID
(dashes)
Only digits, letters and "-" characters can be typed.
AndroidAndroid Widget Not available.
All the characters are allowed.
  • 29ea9852-143a-46a4-842a-ca811e5f8597
128-bit UUID
(braces)
Only digits, letters and "{}" and "-" characters can be typed.
AndroidAndroid Widget Not available.
All the characters are allowed.
  • {29ea9852-143a-46a4-842a-ca811e5f8597}
256-bit UUID
(no spacing)
Only digits and letters can be typed.
AndroidAndroid Widget Not available.
All the characters are allowed.
  • c5c9b31729278ad9da1efc44
    c437b7d85b57060f41e2bf
    4d0e112eadb77a6d0b

"Phone number" masks

Selected maskEffects during the input in the controlEffects during the assignment through programmingExamples
Phone numberOnly the following elements can be typed:
  • the digits.
  • the characters:
    • '.' (dot),
    • '-' (dash),
    • '(' (opening bracket),
    • ')' (closing bracket),
    • ' ' (space).
All the characters are allowed.
  • (33)4.58.69.76.21
  • 03 95 87 12 35
French phone numberOnly the following elements can be typed:
  • the digits.
  • the characters:
    • '.' (dot),
    • '-' (dash),
    • ' ' (space).
The entered value is automatically using the "XX.XX.XX.XX.XX" format.
All the characters are allowed.
The assigned value is automatically using the "XX.XX.XX.XX.XX" format.
  • 04.58.69.76.21
  • 03.95.87.12.35
Swiss phone numberOnly the following elements can be typed:
  • the digits.
  • the characters: ' ' (space).
The entered value is automatically using the "0XX XXX XX XX" format.
All the characters are allowed.
The assigned value is automatically using the "0XX XXX XX XX" format.
  • 041 450 12 12
  • 051 250 22 22
Belgium phone numberOnly the following elements can be typed:
  • the digits.
  • the characters: ' ' (space).
The entered value is automatically using the "0ZZ XX XX XX" or "0Z XXX XX XX" format where Z (or ZZ) corresponds to the dialing code of the area. In most cases, the dialing code of the area corresponds to 2 digits except for the big cities where a single digit is required: Brussels: 2, Antwerp: 3, Liège: 4, Ghent: 9.
All the characters are allowed.
The assigned value is automatically using the "0ZZ XX XX XX" or "0Z XXX XX XX" format.
  • 04 532 12 25
  • 050 23 23 23
Canadian phone numberOnly the following elements can be typed:
  • the digits.
  • the characters:
    • '-' (dash),
    • ' ' (space).
The value typed is automatically using the "XXX CCC-CCCC" format where XXX corresponds to the regional code and CCC-CCC to the local number.
All the characters are allowed.
The assigned value is automatically using the "XXX CCC-CCCC" format.
  • 403 250-350
  • 778 350-150

"Company/Bank" masks

Selected maskEffects during the input in the controlEffects during the assignment through programming
SIREN numberOnly 8 digits can be typed. The ninth digit corresponds to a checksum number (calculated according to the Luhn algorithm). It is automatically proposed.All the characters are allowed.
SIRET number12 digits can be typed. The thirteenth digit corresponds to the checksum number (calculated according to the Luhn algorithm). It is automatically proposed.All the characters are allowed.
IBAN numberInternational bank account number containing 2 letters, 2 digits (control key) and the account number on 30 digitsAll the characters are allowed.
French RIB numberFrench bank account number on 23 characters:
  • 5 digits (bank code),
  • 5 digits (branch number),
  • 11 digits or letters (account number),
  • 2 digits (RIB key)
All the characters are allowed.
Visa or MasterCard bank card16 digits.All the characters are allowed.
up to 16 characters.
American Express bank card15 digits.All the characters are allowed.
up to 15 characters.

"Social security number" masks

Selected maskEffects during the input in the controlEffects during the assignment through programmingExamples
INSEE number
(see the note below)
Only the digits can be typed.
The first number always corresponds to a '1' or to a '2'.
up to 13 digits.
All the characters are allowed.
up to 13 characters.
  • 2790221241598
  • 1590866795412
INSEE number + Key
(see the note below)
Only the digits can be typed.
The first number always corresponds to a '1' or to a '2'.
up to 15 digits.
All the characters are allowed.
up to 15 characters.
  • 279022124159875
  • 159086679541259
The identification numbers used by other countries are also available in WINDEV, WINDEV Mobile and WEBDEV.

Reminder: The INSEE number is used to identify a French individual. This number contains:
  • the gender (1: Man, 2: Woman),
  • the last two digits of the year of birth,
  • the month of birth,
  • the region of birth,
  • the INSEE number corresponding to the city of birth,
  • the order number corresponding to the rank of the birth registration on the city records.
    The INSEE number can be completed by a two-digit number called "Key". This key is used to check the validity of the INSEE number.

"Zip code" masks

The zip code numbers used by other countries are also available in WINDEV, WINDEV Mobile and WEBDEV.
Caution: Only the following preset masks are supported in a text control found in a report: "1st letter in uppercase", "All in uppercase" and "All in lowercase".
Custom input masks
The custom masks can be described via the following characters:
  • '9': single digit
  • 'C': digit or space character
  • 'L': uppercase letter
  • 'l': lowercase letter
  • 'A': uppercase alphanumeric character
  • 'a': lowercase alphanumeric character
  • '?': any character
Any other character is reproduced as it is. Therefore, the masks are never wrong.
Caution: The custom input masks are only applied to the characters typed. These masks are not applied to the initial values or to the values assigned by programming.
Remark: A numeric mask can be described in a text control. The value retrieved will be a numeric character string and not a numeric value.
For example: For a French registration plate, the 'CCCC LL 9A' mask (9A for the 2A and 2B regions) will return a result in the following format: "1245 QD 34".
File input mask
In the case of a "file path" input mask, a help for entering a file path can be enabled during runtime thanks to the "Assisted input of file path" check box below the mask choice:
Assisted input of a file path
Remarks:
  • This mask is only available for a text control.
  • This mask cannot be applied on the initial value or on the value assigned by programming.
  • This option will be ignored if the assisted input on data is enabled.
  • AndroidAndroid Widget This type of mask is not available.
Related Examples:
Advanced input mask Unit examples (WINDEV): Advanced input mask
[ + ] Handling the input masks in WINDEV:
- Defining the format of positive/negative number in a numeric edit control
- Defining how negative numbers will be displayed in a numeric edit control
- Defining how the value 0 will be displayed in a numeric edit control
- Using a regular expression to prevent from typing characters other than 1, 2, 3, 4, 5 and 6.
- Using a regular expression to "regulate" the input of a French registration number
Minimum version required
  • Version 9
This page is also available for…
Comments
Exemplo
https://repository.windev.com/resource.awp?file_id=281474976711152;valida-cpf-cnpj-telefone-com-mascara-validacao-com-expressao-regular
Boller
12 Jul. 2021

Last update: 06/22/2023

Send a report | Local help