Find a regular expression for strings containing the substring 01a and even number of 1's over the alphabet {0,1,a} [closed]

StackOverflow https://stackoverflow.com/questions/12119795

Question

Regular language given by its description:

The set of all strings of {0,1, a}, which contain the substring '01a' and an even number of '1'. For example, '01a1 ', '101a', '101a101'.

How to construct a regular expression that specifies the language?

Était-ce utile?

La solution

a oneliner for the heck of it:

^([0a]*1[0a]*([0a]*1[0a]*1)*)01a([0a]*1[0a]*1)*|([0a]*1[0a]*1)*01a([0a]*1[0a]*([0a]*1[0a]*1)*)$

basically, it checks for

string with odd number of 1s + 01a + string with even number of ones

OR

string with even number of 1s + 01a + string with odd number of ones

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top