When having strings like
helloworld
worldhello
ollehdlrow
Is there a regex that can match all those cases? So, basically a pattern that will match all strings that contain all characters, in unspecified order.
I tried using
/[helloworld]{10}/
but this doesn’t work for obvious reasons, as it will also match eeeeeeeeee.
You definitely don’t want to use regular expressions for this.
In order to check if a character exists in the string, in your case, you would have to use a positive lookahead. It would look something like this
(?=a)to check for the charactera. Thats fine. If we want to check for a string containing the characteraandbwe can do/^(?=.*a)(?=.*b)/. Problems arise if we want to check for multipleas.View this example: http://regex101.com/r/iV2jC8
As you can see, the regex has been “told” to look two times for the letter ‘a’. However, the first case still matches. This is because the engine does not save the position where it initially found the first ‘a’, and thus the next assertion finds the very same a. This is the case in all three of the examples. So in reality, none of them are really being validated.
You would have to do something like this: http://regex101.com/r/cR8eR4
Which as you probably can imagine will quickly get out of hand with larger patterns.
I hope this helps, best of luck.