包含不适用于特殊字符 [英] contains not working for special characters

查看:168
本文介绍了包含不适用于特殊字符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

包含未给出特殊字符的正确结果



  var  searchstring =  ?/!@#$$%^& *; 


bool isworking = searchstring.Contains( ?/!@#$$%^& *);











i我正在 isworking as false

解决方案

%^& *;


bool isworking = searchstring.Contains( ?/!@#


%^& *);











i得到 isworking as false


您显示的代码可能不是您的意思:包含匹配原始字符串作为原始子字符串 - 所以如果输入字符串不包含匹配中的每个字符字符串完全相同的顺序,没有插入字符,匹配将返回false。

所以

   ABCD .Contains(  BC

将返回 true ,而

   AB.CD .Contains(  BC 

将返回 false



string.Contains不支持通配符,所以如果你想要你需要一个正则表达式,如果你想包含任何这些字符而不是字符串匹配那么你想要 IndexOfAny [ ^ ]


contains not giving proper result for special charcters

var searchstring = "?/!@#$$%^&*";


bool isworking = searchstring.Contains("?/!@#$$%^&*");






i am getting isworking as false

解决方案

%^&*"; bool isworking = searchstring.Contains("?/!@#


%^&*");






i am getting isworking as false


It's possible that the code you show is not what you mean: Contains matches the whole string as-is as a substring in the original - so if the input string does not contain every character in the "match string" in exactly the same order and with no intervening characters, the match will return false.
So

"ABCD".Contains("BC")

will return true, while

"AB.CD".Contains("BC")

will return false.

string.Contains does not support wildcards, so if you want that you will need a Regex, and if you want "contains any of these characters" instead of a string match then you want IndexOfAny[^]


这篇关于包含不适用于特殊字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆