加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何在VB.NET中使用正则表达式大写每个单词的第一个字符?

发布时间:2020-12-17 00:19:09 所属栏目:大数据 来源:网络整理
导读:是否可以使用正则表达式将每个单词的第一个字符大写? 我将在VB.net(SSIS)中使用它 编辑:下面添加的VB.NET代码 Dim input As String = "The quick brown fox jumps over the lazy dog"Dim pattern As String = "b(w|['-])+b"' With lambda support:Dim r
是否可以使用正则表达式将每个单词的第一个字符大写?

我将在VB.net(SSIS)中使用它

编辑:下面添加的VB.NET代码
Dim input As String = "The quick brown fox jumps over the lazy dog"
Dim pattern As String = "b(w|['-])+b"
' With lambda support:
Dim result As String = Regex.Replace(input,pattern,_
    Function (m) m.Value(0).ToString().ToUpper() & m.Value.Substring(1))

如果你不能使用lambdas,那么使用MatchEvaluator代替:

Dim evaluator As MatchEvaluator = AddressOf TitleCase
Dim result As String = Regex.Replace(input,evaluator)

Public Function TitleCase(ByVal m As Match) As String
    Return m.Value(0).ToString().ToUpper() & m.Value.Substring(1)
End Function

从MS Word格式的意义上来说,这不是真正的标题案例,但足够接近.

您没有指定语言,但在C#中您可以这样做:

string input = "The quick brown fox jumps over the lazy dog";
string pattern = @"b(w|['-])+b";
string result = Regex.Replace(input,m => m.Value[0].ToString().ToUpper() + m.Value.Substring(1));

这很好地处理一个字母的单词,因为Substring不会在输入中输出诸如“A”之类的内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读