最近我一直在想一些随机的事情,这个引起了我的兴趣。
如何为包含 X、Y 和 Z(或任何字母组合)但不一定按该顺序的单词编写正则表达式。
我试过了
[^xyz]*x[^xyz]*y[^xyz]*z
但这只按那个顺序搜索
我们可以做
[^xyz ]*[xyz][^xyz ]*[xyz][^xyz ]*[xyz]
但这没有用,因为它也只匹配 xy。
我的目标是一个正则表达式,它将匹配 按以下所有顺序包含 x、y 和 z 的单词
- 某某
- xzy
- yzx
- yxz
- zxy
- zyx
编辑
之前忘记添加了(抱歉)
如何让它也匹配像这样的词
abxcydz(x、y 和 z 按上述任意顺序排列)
最佳答案
你是说这三个字母?如果是这样,那么:
(?=\w*X)(?=\w*Y)(?=\w*Z)\w*
关于匹配包含 X、Y 和 Z 的单词的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9098800/