【发布时间】:2011-04-14 13:51:34
【问题描述】:
我正在尝试找到一种有效的方法来获取输入字符串并将每个标点符号 (. : ? !) 后跟一个空格的第一个字母大写。
输入:
“我吃了点东西。但我没有: 相反,没有。你怎么看?一世 不认为!对不起.moi”
输出:
“我吃了点东西。但我没有: 相反,没有。你怎么看?一世 不认为!对不起.moi”
显而易见的是拆分它,然后将每个组的第一个字符大写,然后连接所有内容。但它超级丑陋。最好的方法是什么? (我在想Regex.Replace 使用MatchEvaluator 将第一个字母大写但想获得更多想法)
谢谢!
【问题讨论】:
-
我会同意拆分的想法。这是一个好主意,而正则表达式将变得更加丑陋。此外,作为一般规则,如果可以,通常最好使用字符串操作而不是正则表达式。
标签: c# .net regex capitalization