以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何提取整个列中某一段字符,形成字符串集合  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=177102)

--  作者:rongping
--  发布时间:2022/5/9 13:16:00
--  如何提取整个列中某一段字符,形成字符串集合
假如我有一个表,表名学生表。表有一个列叫备注,在备注的单元格里面有一段文本,我看过《鲁迅》,《唐诗三百首》,《安徒生童话》等等。我想把每一个备注单元格里面的书名提取出来给一个字符串集合,请问如何实现?
--  作者:有点蓝
--  发布时间:2022/5/9 13:45:00
--  
Dim s As String = "我看过《鲁迅》,《唐诗三百首》,《安徒生童话》等等。"
Dim p As String = "(?<=《).*?(?=》)"
Dim rgx = New System.Text.RegularExpressions.Regex(p, System.Text.RegularExpressions.RegexOptions.IgnoreCase)
For Each match As System.Text.RegularExpressions.Match In rgx.Matches(s)
    Output.Show(match.Value )
Next

--  作者:rongping
--  发布时间:2022/5/9 14:57:00
--  
以下是引用有点蓝在2022/5/9 13:45:00的发言:
Dim s As String = "我看过《鲁迅》,《唐诗三百首》,《安徒生童话》等等。"
Dim p As String = "(?<=《).*?(?=》)"
Dim rgx = New System.Text.RegularExpressions.Regex(p, System.Text.RegularExpressions.RegexOptions.IgnoreCase)
For Each match As System.Text.RegularExpressions.Match In rgx.Matches(s)
    Output.Show(match.Value )
Next


Dim shus As New List(Of String)
shus = DataTables("学生管理").SQLGetValues("备注")
Dim i As Integer
Dim p As String = "(?<=《).*?(?=》)"
Dim rgx = New System.Text.RegularExpressions.Regex(p, System.Text.RegularExpressions.RegexOptions.IgnoreCase)


For i = 0 To names.Count - 1
  For Each match As System.Text.RegularExpressions.Match In rgx.Matches(shus(i))
    Output.Show(match.Value )
Next
Next

 

为什么我这样不行?


--  作者:有点蓝
--  发布时间:2022/5/9 15:04:00
--  
请上传实例说明