以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 在集合中如何确定包含某个字符的字段位置? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=188679) |
-- 作者:ZJZK2018 -- 发布时间:2023/10/10 18:41:00 -- 在集合中如何确定包含某个字符的字段位置? 在集合中如何确定包含某个字符的字段位置? Dim nms As New List(Of String) Names.Add( "HGF") Names.Add("电冰箱") Names.Add("洗衣机") Names.Add( "电视机") Names.Add( "AAA") Names.Add( "BBB") Output.Show(nms.Indexof(nms.Contains("电视"))) 需求是:找出含有“电视”二个字符的“电视机”字段的位置? |
-- 作者:有点蓝 -- 发布时间:2023/10/10 20:25:00 -- 参考:http://www.foxtable.com/webhelp/topics/0217.htm |
-- 作者:ZJZK2018 -- 发布时间:2023/10/10 20:44:00 -- 教程中是包含“电视机” ,而我需要的是“电视”二个字符,一楼的代码出错了 老师请指教??不知道怎么做?
[此贴子已经被作者于2023/10/10 20:50:03编辑过]
|
-- 作者:有点蓝 -- 发布时间:2023/10/10 21:03:00 -- 这种只能遍历集合,逐个判断 |
-- 作者:ZJZK2018 -- 发布时间:2023/10/10 21:21:00 -- 解决了: Dim nms As New List(Of String) nms.Add( "HGF") nms.Add("电冰箱") nms.Add("洗衣机") nms.Add( "电视机") nms.Add( "AAA") nms.Add( "BBB") For Each st As String In nms If st.Contains("电视") Then msgbox(nms.Indexof(st)) End If Next |
-- 作者:有点蓝 -- 发布时间:2023/10/10 21:28:00 -- For i As Integer = 0 To nms.Count - 1 If nms(i).Contains("电视") Then MsgBox(i) Exit For End If Next
|
-- 作者:ZJZK2018 -- 发布时间:2023/10/10 21:43:00 -- 谢谢 |
-- 作者:ZJZK2018 -- 发布时间:2023/10/10 22:07:00 -- 蓝色和红色部分是连续字符串,但字符串长度不一定,如何删除红色部分字符串?谢谢 温州市域铁路S3线附属配套工程(瑞安段)及S3线瑞安段土建工程施工SG5标段施工SG5标段 改成: 诸暨市浦阳江治理三期工程施工Ⅰ标(高湖南渠出口至船塘湖段)施工Ⅰ标(高湖南渠出口至船塘湖段) 改成:诸暨市浦阳江治理三期工程施工Ⅰ标(高湖南渠出口至船塘湖段) (非重点)天台县石梁镇Y010乡道至慈圣村乌坑农村道路项目(甬金衢上高速公路罗汉岭隧道配套工程)(非重点)天台县石梁镇Y010乡道至慈圣村乌坑农村道路项目(甬金衢上高速公路罗汉岭隧道配套工程)施工 [此贴子已经被作者于2023/10/10 22:07:54编辑过]
|
-- 作者:有点蓝 -- 发布时间:2023/10/10 22:34:00 -- 有没有什么固定的规律,如果没有,没有办法处理 |
-- 作者:ZJZK2018 -- 发布时间:2023/10/12 9:04:00 -- 规律: 要找出的字符串条件如下: 1、二个字符串必须是连续的,如施工SG5标段施工SG5标段 2、字符串长度不确定 3、要找出的字符串长度最小为:2个,最长为整个字符串的一半。 下面代码出,提示字符串长度不够 For i As Integer = 2 To str.Length *0.5 For n As Integer = 0 To str.Length Step i Dim s As String = str.Substring(n,i) Next Next |