C# 当字符串重复时,如何限制字符串中特定符号的数量
如何在字符串重复时限制字符串中特定符号的数量例如,如果我有输入:“Hello,,,,,world…..”要将其写入文本文档,例如,我希望将其作为“Hello,world.”删除所有额外符号,并在单词之间仅保留一个符号。只有逗号和点可以重复字符。您可以这样做:C# 当字符串重复时,如何限制字符串中特定符号的数量,c#,string,text,C#,String,Text,如何在字符串重复时限制字符串中特定符号的数量例如,如果我有输入:“Hello,,,,,world…..”要将其写入文本文档,例如,我希望将其作为“Hello,world.”删除所有额外符号,并在单词之间仅保留一个符号。只有逗号和点可以重复字符。您可以这样做: var text = "Hello,,,, world....."; var result = Regex.Replace(text, @"(\.|,){2,}", m => m.Value.First().ToString());
var text = "Hello,,,, world.....";
var result = Regex.Replace(text, @"(\.|,){2,}", m => m.Value.First().ToString());
正则表达式(\.|,){2,}“将匹配出现2次或多次的
或,
,并替换其中第一个字符的匹配组
([A-Za-z ]+)([,\.])?([^A-Za-z]+)([A-Za-z ]+)([,\.])?([^A-Za-z]+)
此查询将匹配字母,然后接受一个逗号或句点,吃掉其余的,然后重复。,您好,最好还澄清两件事,首先,如果我想在这个限制上添加一些其他符号,例如逗号、点和感叹号,例如,如何操作?第二个问题,如果我只想把它传递到文件中,它会工作得很好,但是如果我想直接在textbox
textBox1.Text=Regex.Replace(textBox1.Text,@“(\。|,){2,}”,m=>m.Value.First().ToString())中使用它代码>如果我写hello,它会用额外的符号把我的carter扔到行的开头,我得到了这个,hello,我可以这样做,>(\!:){2,}(\。\,){2,}“
,但它仍然在开始时抛出插入符号hello,>([A-Za-z]+)([,\。])([^A-Za-z]+([A-Za-z]+)([A-Za-z]+)([,,,,,。))([A-Za-z]+)([A-Za-Za-z]+)([A-Za-Za-Za-z]+))([A-Za-Za-Za-Za-z]+)+)([code>我不知道我做错了什么事,但如果我这样使用它,它仍然会重复符号,然后在某个点切割整个字符串,然后从中间重新开始