c#字符串模糊查找

string[]st={"[2]","[3]","4","5","6"};我想找到有“[]”元素,并且去掉“[]”放到一个新的数组中,应该是string[]st1={"2... string[] st = { "[2]","[3]","4","5","6"};
我想找到有“[]”元素,并且去掉“[]”放到一个新的数组中,应该是string[] st1={"2","3"};这个应该怎么做。
展开
 我来答
醉酒银虫
推荐于2017-11-27 · TA获得超过339个赞
知道小有建树答主
回答量:235
采纳率:0%
帮助的人:257万
展开全部

如果只是这么简单的结构的话,可以这样做:

string[] st = { "[2]", "[3]", "4", "5", "6" };
string[] st1 = st.Where(s => s.StartsWith("[") && s.EndsWith("]")).Select(s => s.Substring(1, s.Length - 2)).ToArray();
追问
可以详细的加个备注吗?
追答
s=>s.StartsWith("[") && s.EndsWith("]")是一个lambda表达式,也就是一个方法,就是判断字符串是否是从[开始,从]结束。
st.Where是linq的筛选方法,它接收一个方法,这个方法拥有一个为列表中元素类型的输入参数,返回bool类型,根据这个方法进行筛选。
Select是linq的选择方法,它也接收一个方法,linq将每一个元素作为一个参数调用这个方法,将返回至合并成列表返回。
s=>s.Substring(1,s.Length-2)也是一个lambda表达式,它将第一个和最后一个字符去掉之后的字符串输出。
冉MLiang
2015-01-14 · TA获得超过222个赞
知道小有建树答主
回答量:393
采纳率:71%
帮助的人:172万
展开全部
用String.Contains()方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式