用符号替换某些字母

时间:2015-11-29 18:52:15

标签: c#

我正在为学校做作业,其中包括在字符串中替换除A,a,S,s,N,n之外的所有字母。

到目前为止,我想出了如何替换这些字母,这与作业相反。

有人可以帮忙吗?

这就是我所拥有的。

hsText = GetComponent <GUIText> ();
hsText.text = hs_get.text;

但是再次......上面的内容与我的任务相反

这里我有一个类似的项目,但这取代了@

的所有内容
string texti = null;
Console.WriteLine ("");
Console.WriteLine ("Put in your sentence ..");
texti = Console.ReadLine();

Console.WriteLine ("You entered the following ..");
Console.WriteLine (texti);

texti = texti.Replace ("a", "*").Replace ("A", "*").Replace ("s", "*").Replace ("S", "*").Replace ("N", "*").Replace ("n", "*");

Console.WriteLine ("Your new text");
Console.WriteLine (texti);

3 个答案:

答案 0 :(得分:1)

您可以使用LINQ:

activeTab = new ReactiveVar('nt1'); //Your default tab

Template.display.helpers({
    activeTab: function(tab){
        return (activeTab.get() == tab);
});

Template.tabs.events({
  'click #nt1': function(){
    activeTab.set('nt1');
  },
  'click #nt2': function(){
    activeTab.set('nt2');
  },
  'click #nt3': function(){
    activeTab.set('nt3');
  }
});

答案 1 :(得分:1)

使用一个简单的循环来构建一个新字符串。但经过一些检查和修改。

string text = Console.ReadLine();
string newText = "";
string ommit = "AaSsNn"; // should not remove these.


for (int i = 0; i < text.Length; i++)
{
    if (ommit.Contains(text[i])) // if character exist in ommit.
    {
        newText += text[i]; // put the original
    }
    else
    {
        newText += "*"; // replace
    }
}

您可以使用更长的条件,而不是使用ommit之类的字符串。

if(text[i].ToString().ToUpper() == "A" ||
   text[i].ToString().ToUpper() == "S" ||
   text[i].ToString().ToUpper() == "N")

答案 2 :(得分:0)

string texti = string.Empty;
Console.WriteLine("");
Console.WriteLine("Put in your sentence ..");
texti = Console.ReadLine();

Console.WriteLine("You entered the following ..");
Console.WriteLine(texti);
foreach (char str in texti)
{
    switch (str)
    {
        case 'A':
        case 'a':
        case 'S':
        case 's':
        case 'N':
        case 'n':
            {
                break;
            }
        default:
            {
                texti = texti.Replace(str, '*');
                break;
            }
    }
}
Console.WriteLine("Your new text");
Console.WriteLine(texti);