Named after its inventor Stephen Cole Kleene, The Kleene closure of a set A denoted by (A*) is the set of all strings (or alternatively lists) of finite length, whose characters are elements of set A.

for example, if set A is {0}, then its Kleene closure A* is: {"", "0", "00", "000", ...}

if set B is {0,1} then B* is {"", "0", "1", "00", "01", "10", "11", "000", "001", ...}

The empty string is always present. The base set of characters need not be finite. The Kleene closure is also called the Kleene star.

The Kleene closure is used pretty often in daily computer use, for example, if you want to search for all the text files in the current directory, you might type: "dir *.txt", the * sign really means "Match with any element of the Kleene closure of characters."