我如何在c#中替换像javascript这样的文本?

时间:2017-06-15 12:28:05

标签: javascript c#

我是C#编程的新手。我之前写过Javascript。我想像在JavaScript中一样替换C#中的文本。这是我的JavaScript代码:

var str = "this is my text";
str = str.replace(/\b(\w)/g,function(matched){
   return matched.toUpperCase();
});

这是如何在C#中完成的?在此先感谢,对不起我的英语不好。

4 个答案:

答案 0 :(得分:1)

你可以这样做:

using System;
using System.Text.RegularExpressions;

class Program {
    static void Main() {
        string text = "this is my text";

        Regex rx = new Regex(@"\b(\w)");

        string result = rx.Replace(text, (Match m) => {
                return m.ToString().ToUpper().ToString();
        } );

        Console.WriteLine(result);// "This Is My Text"
        Console.ReadKey();
    }
}

答案 1 :(得分:0)

在您的JS代码中,您希望将每个单词的首字母大写。在c#中,最好以不同的方式进行。

string lipsum1 = "this is my text";

// Creates a TextInfo based on the "en-US" culture.
TextInfo textInfo = new CultureInfo("en-US",false).TextInfo;

// Changes a string to titlecase.
Console.WriteLine("\"{0}\" to titlecase: {1}", 
                  lipsum1, 
                  textInfo.ToTitleCase( lipsum1 )); 

// Will output: "this is my text" to titlecase: This Is My Text

答案 2 :(得分:0)

有几种方法可以替换字符串:

  1. 每个实例都被替换这很重要。 Replace方法更改指定子字符串的每个实例。我们必须将结果分配给变量。

    using system;
    class Program
    {
       static void Main()
       {
       const string s = "Coding code is about writing Coding code the
                         right way";
       Console.WriteLine(s);
       string v = s.Replace("Coding", "Testing");
       Console.WriteLine(v);
       }
    }
    
  2. //输入:编码代码是以正确的方式编写编码代码

    //输出:测试代码是关于以正确的方式编写测试代码

    1. 仅替换单个字符串用新单词替换单词(和空格)。我们分配给Replace方法的结果。

      using System;
      class Program
      {
        static void Main()
        {
          const string input = "key logger";
          Console.WriteLine("::BEFORE::");
          Console.WriteLine(input);
          string output = input.Replace("key ", "keyword ");
          Console.WriteLine("::AFTER::");
          Console.WriteLine(output);    
        }
      }
      
    2. //输出:

      :: BEFORE ::    键盘记录器

      :: AFTER ::    关键字记录器

      1. 使用StringBuilder替换字符串

        using System;
        using System.Text;
        
        class Program
        {
          static void Main()
          {
            const string s = "This is an example.";
        
            // Create new StringBuilder from string.
            StringBuilder b = new StringBuilder(s);
            Console.WriteLine(b);
        
            // Replace the first word.
            // ... The result doesn't need assignment.
            b.Replace("This", "Here");
            Console.WriteLine(b);
        
            // Insert the string at the beginning.
            b.Insert(0, "Sentence: ");
            Console.WriteLine(b);
          }
        }
        
      2. 输出:

        这是一个例子。

        这是一个例子。

        句子:这是一个例子。

答案 3 :(得分:-1)

您使用String.Replace方法 语法:

String s = "This is an example.";
s = s.replace("is","was");

现在会说:这是一个例子。