因此,下面的代码基本上将文本框中的任何内容转换为句子格式。虽然,它没有大写字母“I‘s,有什么帮助吗?”谢谢
Public Shared Function SentenceCase(ByVal Input As String) As String
Dim SentenceBreakers As String = System.Text.RegularExpressions.Regex.Escape(".!?" & vbCrLf)
Dim Pattern As String = "((?<=^[^" & SentenceBreakers & "\w]{0,})[a-z]|(?<![" & SentenceBreakers & "])(?<=[" & SentenceBreakers & "][^" & SentenceBreakers & "\w]{0,})[a-z])"
Return System.Text.RegularExpressions.Regex.Replace(Input, Pattern, Function(m) m.Value(0).ToString().ToUpper() & m.Value.Substring(1))
End Function发布于 2014-10-10 02:52:30
您可以尝试在末尾再添加一个.Replace(“i ",”i ")
Return System.Text.RegularExpressions.Regex.Replace(Input, Pattern, Function(m) m.Value(0).ToString().ToUpper() & m.Value.Substring(1)).Replace(" i "," I ") https://stackoverflow.com/questions/26291164
复制相似问题