用C#实现 正则效果
给出一个串例如 AA&AA (WHITE) BBBB * (WD99D) 得出来结果 AA-AA-WHITE-BBBB-WD99D-分析就是如果不是数字或者字母就将任何字符替换成- 如果出现几个空格和几个符号连在一起就换成一个"-"求大家帮忙写个谢谢了,
给出一个串例如 AA&AA (WHITE) BBBB * (WD99D) 得出来结果 AA-AA-WHITE-BBBB-WD99D-分析就是如果不是数字或者字母就将任何字符替换成- 如果出现几个空格和几个符号连在一起就换成一个"-"求大家帮忙写个谢谢了,
void Main()
{
string str="AA&AA (WHITE) BBBB * (WD99D)";
Console.WriteLine(Regex.Replace(str,@"(?<=[a-zA-Z\d]+)[^a-zA-Z\d]+","-"));
//AA-AA-WHITE-BBBB-WD99D-
}
string inputs = "AA&AA (WHITE) BBBB * (WD99D)";
string patterns = @"[\W]+";
string srp= Regex.Replace(inputs, patterns, "-");
//AA-AA-WHITE-BBBB-WD99D-
string str = "AA-AA-WHITE-BBBB-WD99D-"; Regex reg = new Regex(@"\W"); string result = reg.Replace(str, "-");
string str = "AA&AA (WHITE) BBBB * (WD99D)"; Regex reg = new Regex(@"\W+"); string result = reg.Replace(str, "-");
string str = "AA&AA (WHITE) BBBB * (WD99D)";
Regex reg = new Regex(@"\W+");
string result = reg.Replace(str, "-");
//这个结果是能够得到AA-AA-WHITE-BBBB-WD99D-
如果
string str = "AA&AA (WHITE) BB_天天BB * (WD99D)";
//得出的结果是AA-AA-WHITE-BB_天天BB-WD99D-因为\W+匹配的是“任意不是字母,数字,下划线,汉字的字符”