正则表达式,用于检查字符串是否包含所有特定符号

Пав*_*нов 2 c# regex string

问题是可能的字符串是:abcdefghijklmnopqrstuvwxyz(已排序)

我有另外一个字符串,可以找到像:adef

检查所有指定字符是否都在字符串中的正则表达式是什么?

测试用例:string:amnosxy find chars:osy result:true

strings:amnosxy find chars:anz result:false(z not found).

它看起来像containsAll方法

要检查的正则表达式是什么?(有可能使它在dinamically取决于查找字符串).

我不喜欢每个字符的循环解决方案,并检查IndexOf ..

Tim*_*ter 7

不需要使用正则表达式:

bool containsAll = !"osy".Except("amnosxy").Any();
Run Code Online (Sandbox Code Playgroud)

另一种有效的方法是使用a HashSet<char>和它的IsSubsetOf方法:

HashSet<char> chars = new HashSet<char>("osy");
bool containsAll = chars.IsSubsetOf("amnosxy");
Run Code Online (Sandbox Code Playgroud)