# Regex for only alphabets and numbers

An alphabet is a unit of information that represents a single letter i.e., from a-z or A-Z. A digit is a numerical symbol used in mathematical notation to represent a number. In the decimal number system, which is the most common number system used in the world today, there are ten digits- 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. These digits are used to represent all possible numbers, including integers (whole numbers), fractions, and decimals. In this article let's understand how we can create a regex for alphabet and how regex can be matched for a given alphabet.

Regex (short for regular expression) is a powerful tool used for searching and manipulating text. It is composed of a sequence of alphabets that define a search pattern. Regex can be used to find patterns in large amounts of text, validate user input, and manipulate strings. It is widely used in programming languages, text editors, and command line tools.

# Structure of a alphabet and numbers

The alphanumeric should have the following criteria and structure-

- an alphabet is a unit of information that represents a single letter from a-z or A-Z
- a digit should be - 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9.
- It can contain only alphabets and numbers.

# Regex for checking if only alphabets and numbers is valid or not

Regular Expression for alphabet and numbers-

```
/^[0-9a-z]+$/igm
```

Test string examples for the above regex-

Input String | Match Output |
---|---|

ae | matches |

12G | matches |

sdvAS2 | matches |

A55 | matches |

GYU(*&) | does not match |

Note the i modifier in the regex takes care of the UPPERCASE letters.

Here is a detailed explanation of the above regex-

```
/^[0-9a-z]+$/igm
^ asserts position at start of a line
Match a single alphabet present in the list below [a-z]
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
a-z matches a single alphabet in the range between a (index 97) and z (index 122) (case insensitive)
$ asserts position at the end of a line
Global pattern flags
m modifier: multi line. Causes ^ and $ to match the begin/end of each line (not only begin/end of string)
g modifier: global. All matches (don't return after first match)
i modifier: insensitive. Case insensitive match (ignores case of [a-zA-Z])
```

Hope this article was useful to check if the string is a valid alphabets and words or not.