Foxtable(狐表)用户栏目专家坐堂 → 如何判定一个字符串中包含某字符的个数


  共有5295人关注过本帖树形打印复制链接

主题:如何判定一个字符串中包含某字符的个数

帅哥哟,离线,有人找我吗?
cxabc123
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
如何判定一个字符串中包含某字符的个数  发帖心情 Post By:2013/7/4 11:32:00 [只看该作者]

比如一字符串:"daew,,,,fewds",这个字符串中包含多个“,”,如何判断逗号“,”的个数,请那位高手指教

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/4 11:35:00 [只看该作者]

Dim str As String = "daew,,,,fewds"
Dim count As Integer=0
For Each c As Char In str
    If c = "," Then
        count=count+1
    End If
Next
MessageBox.show(count)

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/7/4 11:39:00 [只看该作者]

谢谢,看来不知道的东西还有很多

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/7/4 13:04:00 [只看该作者]

Dim s As String = ",da,,ew,,,,few,d,,s,"
Dim i As Integer
For j As Integer = 0 To s.Length - 1
    If s(j) = "," Then
        i + = 1
    End If
Next
MessageBox.Show(i)

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/7/4 14:41:00 [只看该作者]

Dim s As String = ",da,,ew,,,,few,d,,s,"
Dim i As Integer = s.Length - s.Replace(",","").Length
MessageBox.Show(i)

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/7/4 14:43:00 [只看该作者]

以下是引用程兴刚在2013-7-4 14:41:00的发言:
Dim s As String = ",da,,ew,,,,few,d,,s,"
Dim i As Integer = s.Length - s.Replace(",","").Length
MessageBox.Show(i)

棋高一着,马胜一力。


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/7/4 14:44:00 [只看该作者]

以下是引用lsy在2013-7-4 14:43:00的发言:

棋高一着,马胜一力。




图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/7/4 14:46:00 [只看该作者]

Dim s As String = ",da,,ew,,,,few,d,,s,"
Dim Values() As String = s.Split(",")
MessageBox.Show(Values.Length-1)

 

类似这种问题没必要遍历,字符串越长效率越低!

[此贴子已经被作者于2013-7-4 14:46:19编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/7/4 14:57:00 [只看该作者]

编程就是缝缝补补,升级没完没了、补丁打个没完

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/7/5 10:11:00 [只看该作者]

感谢大家帮我释疑解惑,我把我提出这个问题的用途告诉大家,看有没有更好的办法。在帮助中有:StringBuilder方法,可大规模地合并字符串。

Dim v As String
Dim s As new StringBuilder
Dim cr As Row = Tables("干部信息").Current
s.Append(cr("姓名") & ",")
s.Append(cr("性别") & ",")

s.Append(cr("民族") & ",")
v = s.Tostring
Output.Show(v)

问题是:当性别、民族两列没有填入内容时,姓名后出现两个“,,”,有时候会出现三个“,,,”,这样就达不到要求,应该如何处理


 回到顶部
总数 13 1 2 下一页