首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么自己运行转义字符

2014-01-21 
如何自己运行转义字符string str1abc\123 // str1 实际等于字符【abc123】string str2@abc\123 /

如何自己运行转义字符

string str1="abc\'123"; // str1 实际等于字符【abc'123】
string str2=@"abc\'123"; // str2 实际等于字符【abc\'123】

请问,如何在C#中有没有什么类和方法,可以直接运行一下使得 str2 转换为 str1 ?谢谢
[解决办法]
本帖最后由 caozhy 于 2014-01-15 00:39:00 编辑 添加引用-com-Microsoft Script Control 1.0

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\\""1/0";
            string str1 = evalstr(str2);
            Console.WriteLine(str1);
        }
        static string evalstr(string s)
        {
            try
            {
                MSScriptControl.ScriptControl sc = new MSScriptControl.ScriptControl();
                sc.Language = "javascript";
                string s1 = Regex.Replace(s, @"(?<!\\)((\\\\)*)""", @"$1""");
                sc.AddCode("function foo() { return "" + s1 + ""; }");
                return sc.Run("foo", new object[] { }).ToString();
            }
            catch (Exception ex)
            {
                return s; //ex.Message;
            }
        }
    }
}


热点排行