using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string str2 = @"abc\'123";
string str1 = evalstr(str2);
Console.WriteLine(str1);
}
static string evalstr(string s)
{
return Regex.Replace(s, @"\\(.)", "$1");
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string str2 = @"abc\'123";
string str1 = evalstr(str2);
Console.WriteLine(str1);
}
static string evalstr(string s)
{
return Regex.Replace(s, @"\\(.)", "$1");
}
}
}
string str2=@"abc\'123"; // str2 实际等于字符【abc\'123】
字符串前加@符号的写法是c#编译器所支持的特性。
也就是说 你问的问题是如何把1这个字符串变成2
所以说 这个问题很奇葩
非常感谢你的热心帮助!! 不过,确实有不一致的地方,同二楼的代码假如 str2=@"\x8f9f"; 这个代码转义的结果,可以视为“乱码”并没有转义完全。而IDE转义的结果是—— 【辟】字
具体你看一下人家的源码吧
非常感谢你的热心帮助!! 不过,确实有不一致的地方,同二楼的代码假如 str2=@"\x8f9f"; 这个代码转义的结果,可以视为“乱码”并没有转义完全。而IDE转义的结果是—— 【辟】字
好吧,既然js和C#不同,那你还是用C#的吧。思路类似,代码参考
http://bbs.csdn.net/topics/360188060