You can simply iteratively divide each element into smaller parts in a specific order:
string originalString = ...;
List<string> separators = new List<string> { ",", "=", "،", "أو", "او", "/", "." };
string[] result = new[] { originalString };
foreach (var separator in separators)
{
result = result.SelectMany(x => x.Split(new[] { separator }, StringSplitOptions.RemoveEmptyEntries)).ToArray();
}
result = result
.Where(x => x.Length >= 3)
.Select(x => x.FixArabic().func_Special_Trim())
.ToArray();
foreach (var item in result)
{
srTemp.AppendLine($ "{srTitle} > {srTrans} \t {irTransLevel}");
irTransLevel++;
}
.
foreach , ",".
foreach =.
, result , . Length >= 3 FixArabic() func_Special_Trim().
: : , .
, :
string originalString = ...;
string[] separators = new[] { ",", "=", "،", "أو", "او", "/", "." };
string[] result = originalString
.Split(separators, StringSplitOptions.RemoveEmptyEntries)
.Where(x => x.Length >= 3)
.Select(x => x.FixArabic().func_Special_Trim())
.ToArray();
foreach (var item in result)
{
srTemp.AppendLine($ "{srTitle} > {srTrans} \t {irTransLevel}");
irTransLevel++;
}