Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当字符串重复时,如何限制字符串中特定符号的数量_C#_String_Text - Fatal编程技术网

C# 当字符串重复时,如何限制字符串中特定符号的数量

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());

如何在字符串重复时限制字符串中特定符号的数量例如,如果我有输入:“Hello,,,,,world…..”要将其写入文本文档,例如,我希望将其作为“Hello,world.”删除所有额外符号,并在单词之间仅保留一个符号。只有逗号和点可以重复字符。

您可以这样做:

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>我不知道我做错了什么事,但如果我这样使用它,它仍然会重复符号,然后在某个点切割整个字符串,然后从中间重新开始