|
@@ -1,32 +1,23 @@
|
|
|
+using System;
|
|
|
using UnityEngine;
|
|
|
|
|
|
using System.Collections;
|
|
|
using System.Collections.Generic;
|
|
|
+using System.Text.RegularExpressions;
|
|
|
|
|
|
-public class StringFilter
|
|
|
+public class StringFilter
|
|
|
{
|
|
|
- public static List<string> SensitiveWords = new List<string>();
|
|
|
+ public static string[] SensitiveWords;
|
|
|
|
|
|
public static void Init()
|
|
|
{
|
|
|
TextAsset textAsset = ResourceManager.Load<TextAsset>("SensitiveWord", Folder.Config);
|
|
|
-
|
|
|
- string[] sensitiveWords = textAsset.text.Trim().Split('\n');
|
|
|
-
|
|
|
- for (int i = 0; i < sensitiveWords.Length; i++)
|
|
|
- {
|
|
|
- string word = sensitiveWords[i].Split((char)9)[3];
|
|
|
-
|
|
|
- if (!string.IsNullOrEmpty(word))
|
|
|
- {
|
|
|
- SensitiveWords.Add(word.Trim());
|
|
|
- }
|
|
|
- }
|
|
|
+ SensitiveWords = textAsset.text.Split(new[] {"\r\n"}, StringSplitOptions.None);
|
|
|
}
|
|
|
|
|
|
public static string GetFilteredString(string str)
|
|
|
{
|
|
|
- for (int i = 0; i < SensitiveWords.Count; i++)
|
|
|
+ for (int i = 0; i < SensitiveWords.Length; i++)
|
|
|
{
|
|
|
str = str.Replace(SensitiveWords[i], "**");
|
|
|
}
|
|
@@ -36,10 +27,11 @@ public class StringFilter
|
|
|
|
|
|
public static bool ContainSensitiveWord(string str)
|
|
|
{
|
|
|
- for (int i = 0; i < SensitiveWords.Count; i++)
|
|
|
+ for (int i = 0; i < SensitiveWords.Length; i++)
|
|
|
{
|
|
|
if (str.Contains(SensitiveWords[i]))
|
|
|
{
|
|
|
+ Debug.Log(SensitiveWords[i] + " " + i);
|
|
|
return true;
|
|
|
}
|
|
|
}
|