using System.Collections;
|
using System.Collections.Generic;
|
using System.Text;
|
using UnityEngine;
|
|
public abstract class TRichAnalysis<T> where T:class,new()
|
{
|
private static T _inst = null;
|
|
public static T Inst {
|
get {
|
if (_inst == null) {
|
_inst = new T();
|
}
|
return _inst;
|
}
|
}
|
|
protected static StringBuilder m_StringBuilder = new StringBuilder();
|
|
protected static Dictionary<string, string> displayDic = new Dictionary<string, string>();
|
|
public abstract string Analysis(string val,bool IsRich);
|
|
public abstract string CalculateTextIndex(string val,int index);
|
|
protected static readonly char SPLITEVENT = '|';
|
protected static readonly char SPLITDATA = ' ';
|
protected static readonly char SPLITVALUE = '=';
|
|
private static string[] poolStrs=new string[1];
|
|
protected string[] GetSplitEvent(string val)
|
{
|
return val.Split(SPLITEVENT);
|
}
|
|
protected string[] GetSplitData(string val)
|
{
|
return val.Split(SPLITDATA);
|
}
|
|
protected string[] GetSplitValue(string val)
|
{
|
var newVal = val.Replace("=", "");
|
var count = val.Length - newVal.Length;
|
if (count == 1 && WordAnalysis.Color_Start_Regex.IsMatch(val))
|
{
|
poolStrs[0] = val;
|
return poolStrs;
|
}
|
return val.Split(new char[] { SPLITVALUE }, 2);
|
}
|
}
|