用一个字符串替换多个相同的字符
问题描述:
我有一个字符串如下;用一个字符串替换多个相同的字符
dim str as string = "this is a string . "
我想识别这些多空间字符并用一个空格字符替换。使用替换函数将取代所有这些,那么做这种任务的正确方法是什么?
答
import System.Text.RegularExpressions
dim str as string = "This is a test ."
dim r as RegEx = new Regex("[ ]+")
str = r.Replace(str, " ")
答
使用Regex类,以匹配“一个或多个空格”的图案,然后用一个空格取代所有这些实例。
下面是C#代码来做到这一点:
Regex regex = new Regex(" +");
string oldString = "this is a string . ";
string newString = regex.Replace(oldString, " ");
答
我会使用\ S +改性剂,这是更容易阅读
public Regex MyRegex = new Regex(
"\\s+",
RegexOptions.Multiline
| RegexOptions.CultureInvariant
| RegexOptions.Compiled
);
// This is the replacement string
public string MyRegexReplace = " ";
string result = MyRegex.Replace(InputText,MyRegexReplace);
或者在VB
Public Dim MyRegex As Regex = New Regex(_
"\s+", _
RegexOptions.Multiline _
Or RegexOptions.CultureInvariant _
Or RegexOptions.Compiled _
)
Public Dim MyRegexReplace As String = " "
Dim result As String = MyRegex.Replace(InputText,MyRegexReplace)
欺骗。检查出:http://stackoverflow.com/questions/206717/how-do-i-replace-multiple-spaces-with-a-single-space-in-c – 2009-05-22 14:00:50