检查哈希表值的任何部分是否包含某些字符串c#

时间:2017-08-17 13:29:31

标签: c# winforms list hashtable

我将文件反序列化为哈希表,其中密钥包含文件路径,例如Try Below way. <script> $(document).ready(function(){ $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); $.ajax({ type:"POST", data:{id:id}, url : '<?php echo Yii::$app->getUrlManager()->createUrl("/property/favourite"); ?>', success: function(response){ window.location.href = '<?php echo Yii::$app->getUrlManager()->createUrl("/site/chat"); ?>'; } }); }); </script> "c:\test\file.txt"。然后,我需要检查路径"c:\store\etc.txt""c:\"的一部分是否包含在其中一个哈希表键中。因此,如果"c:\test"包含"C:\test\file.txt",则返回"C:\test"

我只需使用下面的列表(lstLoadedNodes是列表)就可以做到这一点很好:

true

我无法找到使用散列表执行此操作的方法,而无需匹配整个密钥。

当我尝试使用哈希表(checkedNodes是我的哈希表)时,如果确切的字符串匹配,它只返回if (lstLoadedNodes.Any(s => s.Contains(e.Node.Path)))

true

如何搜索hashtable.key的任何部分?希望有意义!

我知道我可以先将所有值传递给列表,然后执行&#34; if contains.any&#34;这就是我目前正在做的事情,但这似乎毫无意义,所以我只是检查哈希表。

提前致谢。

1 个答案:

答案 0 :(得分:1)

我认为你正在寻找类似的东西:

checkedNodes.Keys.Cast<string>().Any(k => k.Contains(e.Node.Path));