string str = "0702110409"; (实际上没有10)string str = "0702101109"; (实际上没有01)
string str = "0702011209"; (实际上没有11) (str实际上是由01、02、03、04、05、06、07、08、09、10、11、12任意五个组成)判断str里是否包含string target = 01或02或03或04或05或06或07或08或09或10或11或12里的任意一个刚才,各位老师提示说用:str.Contains(target)
str.IndexOf(target) 但是,对于01或11或10的判断,会有问题但如果用List<string> 效率低,有更好的方法吗?谢谢
string str = "0702011209"; (实际上没有11) (str实际上是由01、02、03、04、05、06、07、08、09、10、11、12任意五个组成)判断str里是否包含string target = 01或02或03或04或05或06或07或08或09或10或11或12里的任意一个刚才,各位老师提示说用:str.Contains(target)
str.IndexOf(target) 但是,对于01或11或10的判断,会有问题但如果用List<string> 效率低,有更好的方法吗?谢谢
public bool Find(string str, string target)
{
for (int n = 0; n < str.Length - 1; n += 2)
{
if (str[n] == target[0] && str[n + 1] == target[1])
return true;
}
return false;
}
bool b1=Find("0702110409","10"); //结果是false
bool b2=Find("0702110409","11"); //结果是true
string str = "0702110409";
bool r = Regex.Matches(str, @"\d{2}").Cast<Match>().Select(x => x.Value).Contains("10");
Console.WriteLine(r);
string str2="数字";
bool t=Regex.IsMatch(str,@"(?<=(\d{2})*)"+str2);
string[] ss = { "01", "02", "03", "04", "05" };
string str = "0702110409";
bool r = Regex.Matches(str, @"\d{2}").Cast<Match>().Select(x => x.Value).Any(x => ss.Contains(x));
Response.Write(r);
老师,是这样的
我的string target = "10";按您的写法 target[0],target[1],下面出现红色波浪线,我错在哪里呢?
public static bool Find(string str, string target)
{
return Regex.Matches(str, @"\d{2}").Cast<Match>().Select(x => x.Value).Contains(target);
}
运算符"=="无法应用于"char"和"string"类型的操作数
nums[r - 2] 相当于 target
直接这样判断不行吗?
if(Find(grp[c-7],nums[r-2]))
//找到
else
//没找到
List<string> grp = new List<string>();
grp[c-7]会自动是string类型
grp[c-][n]是char类型目测nums[r-2]不是string类型的
nums[r-2][0]这个是string类型
nums[r-2][0][0]这个才是char类型