Regular expressions From Online Manual

Revision as of 08:54, 13 September 2014 by Chainy (talk | contribs)
Jump to: navigation, search

In SMF2.0, regular expressions can be used in the Advanced Settings when creating or editing a custom profile field.

NOTE - When entering regular expressions (regex), you must surround them with delimiters such as tildes (~) or double quotes ("), otherwise they will not work and there will be no warning of this failure. Two examples of the correct way of entering regular expressions for SMF: ~[12][0-9]{3}~ or "[12][0-9]{3}"

The input mask is important for your forum's security. Validating the input from a user can help ensure that data is not used in a way you do not expect. Here ares ome examples of simple regular expressions:

  • "[A-Za-z]+" - Match all upper and lower case alphabet characters.
  • "[0-9]+" - Match all numeric characters.
  • "[A-Za-z0-9]{7}" - Match all upper and lower case alphabet and numeric characters seven times.
  • "[^0-9]?" - Forbid any number from being matched.
  • "^([A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})$" - Only allow 3 or 6 character hexcodes.

Additionally, special metacharacters such as ?+*^$ and {xx} can be defined:

  • ? - None or one match of previous expression.
  • + - One or more of previous expression.
  • * - None or more of previous expression.
  • {xx} - An exact number from previous expression.
  • {xx,} - An exact number or more from previous expression.
  • {,xx} - An exact number or less from previous expression.
  • {xx,yy} - An exact match between the two numbers from previous expression.
  • ^ - Start of string.
  • $ - End of string.
  • \ - Escapes the next character.


Advertisement: