字符串匹配的问题

Candy_002 2014-07-23 03:56:08
请教大家一个问题:
我现在需要判断字符串A是否包含字符串B,我知道"strings.Contains"的方法,但是这有一个问题,例如:
字符串A:XXXXX123456YYYYY
字符串B:123456
字符串C:123

我希望的结果是A包含B,但是A不包含C
但是如果用Contains的话,A包含B必然A也包含C

请教一下,怎样才能做到完全匹配呢?????
...全文
629 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Candy_002 2014-07-30
  • 打赏
  • 举报
回复
引用 9 楼 caozhy 的回复:
string s = "“。。。'B?z?$!CZ2870-AN$$$$$$$。。。”"; bool 是否包含 = Regex.Match(s, "\\w+?").Value == 待比较字符串;
按照你的想法搞定了,谢谢!
蹦极的馒头 2014-07-28
  • 打赏
  • 举报
回复
我相信楼主既然有这种需求,那么一定有一个比较的依据,比如统一的字符串B的长度,比如你所需要比较的字符串必须是9位全部匹配才行,如果是那样就随便写写就可以了 bool existAll; int nums = 9; string par1 = "'B?z?$!CZ2870-AN$$$$$$$"; string par2 = "CZ2870-AN"; for (int i = 0; i < par1.Length - nums; i++) { if (par1.Substring(i, nums) == par2) { existAll = true; break; } }
Peng_baoqing 2014-07-28
  • 打赏
  • 举报
回复
这个确实还是需要你多给点例子或者规律来判断的,因为包含B肯定包含C的如果你要是有长度限制那就好说拉,如果没有的话.....那就没有办法判断吧 比如说来再来个D12那你是包含进去C呢还是不包含进去呢
threenewbee 2014-07-26
  • 打赏
  • 举报
回复
string s = "“。。。'B?z?$!CZ2870-AN$$$$$$$。。。”"; bool 是否包含 = Regex.Match(s, "\\w+?").Value == 待比较字符串;
qwertxp 2014-07-26
  • 打赏
  • 举报
回复
完全不明白,C是B的一部分,A包含B当然就会包含C啊。 LZ给个A包含B但不包含C的例子。
SYGKT 2014-07-25
  • 打赏
  • 举报
回复
起码你要在数学上能够描述你搜索的规律,否则怎么判断
getti66 2014-07-25
  • 打赏
  • 举报
回复
验证长度之后,再匹配
Candy_002 2014-07-24
  • 打赏
  • 举报
回复
引用 5 楼 qq1318763 的回复:
那你就在匹配下长度呗,判断是否包含的同时 验证下长度
字符串A:XXXXX123456YYYYY 字符串B:123456 字符串C:123 如果A包含B,必然A也包含C啊,怎么验证长度??
qq1318763 2014-07-23
  • 打赏
  • 举报
回复
那你就在匹配下长度呗,判断是否包含的同时 验证下长度
Candy_002 2014-07-23
  • 打赏
  • 举报
回复
引用 3 楼 bdmh 的回复:
你这也没啥规律啊,如果就是取得连续的数字,那可以用正则 [\d]+
是啊,其实我拿到的数据是这样一大串字符串:“。。。'B?z?$!CZ2870-AN$$$$$$$。。。” 我想让它CZ2870-AN返回true,CZ2870返回false
bdmh 2014-07-23
  • 打赏
  • 举报
回复
你这也没啥规律啊,如果就是取得连续的数字,那可以用正则 [\d]+
Candy_002 2014-07-23
  • 打赏
  • 举报
回复
Candy_002 2014-07-23
  • 打赏
  • 举报
回复

17,741

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧