Change WORDS

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text.RegularExpressions;
using System.Windows.Forms;
using Microsoft.International.Converters.PinYinConverter;

namespace IShutUp
{
    class Program
    {
        [STAThreadAttribute]
        static void Main(string[] args)
        {
            string body = "";
            IDataObject iData = Clipboard.GetDataObject();
            if (iData != null && iData.GetDataPresent(DataFormats.Text))
                body = (String)iData.GetData(DataFormats.Text);
            else
                body = "请选择文字后运行文件";
            StreamReader banTxt = new StreamReader(@"敏感词表.txt", System.Text.Encoding.Default);
            Regex re = new Regex(@"
");
            string[] banWords = re.Split(banTxt.ReadToEnd());
            List<string> wordsHas = new List<string>();
            foreach (string item in banWords)
            {
                if (body.Contains(item))
                {
                    wordsHas.Add(item);
                }
            }
            wordsHas=wordsHas.Distinct().ToList();
            foreach (string banWord in wordsHas)
            {
                body = body.Replace(banWord, GetTongYinCi(banWord));
            }
            Clipboard.SetText(body);
        }
        public static string GetTongYinCi(string banWords)
        {
            string words = "";
            foreach (char banWord in banWords)
            {
                Random ran = new Random();
                ChineseChar banWordChineseChar =new ChineseChar(banWord);
                char[] wordsa = ChineseChar.GetChars(banWordChineseChar.Pinyins[ran.Next(0,banWordChineseChar.PinyinCount-1)]);
                int ranNum = ran.Next(0, wordsa.Length);
                words += wordsa[ranNum].ToString() + "(" + banWordChineseChar.Pinyins[0] + ")";
            }
            return words;
        }
    }
}

IShutUpCode.zip

IShutUp.zip

原文地址:https://www.cnblogs.com/yixiaozi/p/4750020.html