string s1 = "[quote=useruk1]<p>im useruk1</p>[/quote]<p>hi im mod1-probe</p>";
string s2 = "hi im mod1-probe";
string s3 = "blah blah";
string s4 = s1.Replace(s2, s3);
Console.Write(s4);
似乎无法正常工作。有任何想法吗?如何解决这个问题?
更新:
问题是空间,正常空间ASCII值是32以上字符串ASCII值是160所以我做了
s1 = Regex.Replace(s1, @"\u00A0", " ");
everthing工作得很好!非常感谢你们!
答案 0 :(得分:3)
当我运行代码时,输出为:
[quote=useruk1]<p>im useruk1</p>[/quote]<p>blah blah</p>
这不是你所期望的吗?
编辑:啊啊啊......正如保罗指出的那样,空格与制表会解释它。
答案 1 :(得分:3)
将输出设为 [quote=useruk1]<p>im useruk1</p>[/quote]<p>blah blah</p>
。
检查s2和s1中“hi im mod1-probe”中 hi 和 im 之间的空格
答案 2 :(得分:3)
确实有效。我确实从你的帖子中复制了这段代码
string s1 = "[quote=useruk1]<p>im useruk1</p>[/quote]<p>hi im mod1-probe</p>";
string s2 = "hi im mod1-probe";
string s3 = "blah blah";
string s4 = s1.Replace( s2, s3 );
Console.Write( s4 );
Console.ReadLine( );
并将其粘贴到一个新项目中。我的结果是:
"[quote=useruk1]<p>im useruk1</p>[/quote]<p>blah blah</p>"
答案 3 :(得分:2)
问题在于空间,
正常空间ASCII值为32且以上字符串ASCII值为160
所以我做了一个
s1 = Regex.Replace(s1,@“\ u00A0”,“”);
everthing工作正常!
非常感谢!
答案 4 :(得分:1)
为了防止任何可能误解“/ p”,我会:
string s1 = @"[quote=useruk1]<p>im useruk1</p>[/quote]<p>hi im mod1-probe</p>";