mirror of
https://github.com/SubtitleEdit/subtitleedit.git
synced 2024-10-28 15:02:35 +01:00
Improved performance of IndoxOf method
This commit is contained in:
parent
52fa865572
commit
0826d25e31
@ -206,6 +206,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
labelProgress.Text = string.Empty;
|
||||
File.Delete(targetFile);
|
||||
this.DialogResult = DialogResult.OK;
|
||||
process.Dispose();
|
||||
}
|
||||
|
||||
private void ReadWaveFile(string targetFile, int delayInMilliseconds)
|
||||
@ -262,6 +263,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
}
|
||||
}
|
||||
mkv.Dispose();
|
||||
}
|
||||
catch
|
||||
{
|
||||
@ -310,6 +312,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
DialogResult = DialogResult.Cancel;
|
||||
return;
|
||||
}
|
||||
form.Dispose();
|
||||
}
|
||||
|
||||
// check for delay in matroska files
|
||||
@ -322,6 +325,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
{
|
||||
_delayInMilliseconds = (int)mkv.GetTrackStartTime(mkvAudioTrackNumbers[_audioTrackNumber]);
|
||||
}
|
||||
mkv.Dispose();
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
@ -1503,7 +1503,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (!quote.Contains(Environment.NewLine))
|
||||
{
|
||||
string newText = p.Text;
|
||||
int indexOfFontTag = newText.ToLower().IndexOf("<font ");
|
||||
int indexOfFontTag = newText.ToLower().IndexOf("<font ", StringComparison.Ordinal);
|
||||
if (start > 0 && !(Environment.NewLine + " >[(♪♫¿").Contains(p.Text[start - 1].ToString()))
|
||||
{
|
||||
if (indexOfFontTag == -1 || start > newText.IndexOf('>', indexOfFontTag)) // font tags can contain "
|
||||
@ -1554,9 +1554,9 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
|
||||
//fix missing spaces in "Hey...move it!" to "Hey... move it!"
|
||||
if ((p.Text.Contains("...") && p.Text.Length > 5))
|
||||
int index = p.Text.IndexOf("...", StringComparison.Ordinal);
|
||||
if (index >= 0 && p.Text.Length > 5)
|
||||
{
|
||||
int index = p.Text.IndexOf("...");
|
||||
string newText = p.Text;
|
||||
while (index != -1)
|
||||
{
|
||||
@ -1566,7 +1566,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
Utilities.AllLettersAndNumbers.Contains(newText[index - 1].ToString()))
|
||||
newText = newText.Insert(index + 3, " ");
|
||||
}
|
||||
index = newText.IndexOf("...", index + 2);
|
||||
index = newText.IndexOf("...", index + 2, StringComparison.Ordinal);
|
||||
}
|
||||
if (newText != p.Text && AllowFix(p, fixAction))
|
||||
{
|
||||
@ -1580,9 +1580,9 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
|
||||
//fix missing spaces in "The<i>Bombshell</i> will gone." to "The <i>Bombshell</i> will gone."
|
||||
if ((p.Text.Contains("<i>") && p.Text.Length > 5))
|
||||
index = p.Text.IndexOf("<i>", StringComparison.Ordinal);
|
||||
if (index >= 0 && p.Text.Length > 5)
|
||||
{
|
||||
int index = p.Text.IndexOf("<i>");
|
||||
string newText = p.Text;
|
||||
while (index != -1)
|
||||
{
|
||||
@ -1592,7 +1592,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
Utilities.AllLettersAndNumbers.Contains(newText[index - 1].ToString()))
|
||||
newText = newText.Insert(index, " ");
|
||||
}
|
||||
index = newText.IndexOf("<i>", index + 3);
|
||||
index = newText.IndexOf("<i>", index + 3, StringComparison.Ordinal);
|
||||
}
|
||||
if (newText != p.Text && AllowFix(p, fixAction))
|
||||
{
|
||||
@ -1606,9 +1606,9 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
|
||||
//fix missing spaces in "The <i>Bombshell</i>will gone." to "The <i>Bombshell</i> will gone."
|
||||
if ((p.Text.Contains("</i>") && p.Text.Length > 5))
|
||||
index = p.Text.IndexOf("</i>", StringComparison.Ordinal);
|
||||
if (index >= 0 && p.Text.Length > 5)
|
||||
{
|
||||
int index = p.Text.IndexOf("</i>");
|
||||
string newText = p.Text;
|
||||
while (index != -1)
|
||||
{
|
||||
@ -1618,7 +1618,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
Utilities.AllLettersAndNumbers.Contains(newText[index - 1].ToString()))
|
||||
newText = newText.Insert(index + 4, " ");
|
||||
}
|
||||
index = newText.IndexOf("</i>", index + 4);
|
||||
index = newText.IndexOf("</i>", index + 4, StringComparison.Ordinal);
|
||||
}
|
||||
if (newText != p.Text && AllowFix(p, fixAction))
|
||||
{
|
||||
@ -1746,13 +1746,13 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
p.Text = p.Text.Trim().Replace(" " + Environment.NewLine, Environment.NewLine);
|
||||
p.Text = p.Text.Replace(Environment.NewLine, "\"" + Environment.NewLine);
|
||||
}
|
||||
else if (line.Length > 5 && line.EndsWith("\"") && line.IndexOf("- ") >= 0 && line.IndexOf("- ") < 4)
|
||||
else if (line.Length > 5 && line.EndsWith("\"") && line.IndexOf("- ", StringComparison.Ordinal) >= 0 && line.IndexOf("- ", StringComparison.Ordinal) < 4)
|
||||
{
|
||||
p.Text = p.Text.Insert(line.IndexOf("- ") + 2, "\"");
|
||||
p.Text = p.Text.Insert(line.IndexOf("- ", StringComparison.Ordinal) + 2, "\"");
|
||||
}
|
||||
else if (line.Contains("\"") && line.IndexOf("\"") > 2 && line.IndexOf("\"") < line.Length - 3)
|
||||
else if (line.Contains("\"") && line.IndexOf("\"", StringComparison.Ordinal) > 2 && line.IndexOf("\"", StringComparison.Ordinal) < line.Length - 3)
|
||||
{
|
||||
int index = line.IndexOf("\"");
|
||||
int index = line.IndexOf("\"", StringComparison.Ordinal);
|
||||
if (line[index - 1] == ' ')
|
||||
{
|
||||
p.Text = p.Text.Trim().Replace(" " + Environment.NewLine, Environment.NewLine);
|
||||
@ -1760,8 +1760,8 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
else if (line[index + 1] == ' ')
|
||||
{
|
||||
if (line.Length > 5 && line.IndexOf("- ") >= 0 && line.IndexOf("- ") < 4)
|
||||
p.Text = p.Text.Insert(line.IndexOf("- ") + 2, "\"");
|
||||
if (line.Length > 5 && line.IndexOf("- ", StringComparison.Ordinal) >= 0 && line.IndexOf("- ", StringComparison.Ordinal) < 4)
|
||||
p.Text = p.Text.Insert(line.IndexOf("- ", StringComparison.Ordinal) + 2, "\"");
|
||||
}
|
||||
}
|
||||
else if (lines[1].Contains("\""))
|
||||
@ -1771,21 +1771,21 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
{
|
||||
p.Text = p.Text.Trim() + "\"";
|
||||
}
|
||||
else if (line.Length > 5 && line.EndsWith("\"") && p.Text.IndexOf(Environment.NewLine + "- ") >= 0)
|
||||
else if (line.Length > 5 && line.EndsWith("\"") && p.Text.IndexOf(Environment.NewLine + "- ", StringComparison.Ordinal) >= 0)
|
||||
{
|
||||
p.Text = p.Text.Insert(p.Text.IndexOf(Environment.NewLine + "- ") + Environment.NewLine.Length + 2, "\"");
|
||||
p.Text = p.Text.Insert(p.Text.IndexOf(Environment.NewLine + "- ", StringComparison.Ordinal) + Environment.NewLine.Length + 2, "\"");
|
||||
}
|
||||
else if (line.Contains("\"") && line.IndexOf("\"") > 2 && line.IndexOf("\"") < line.Length - 3)
|
||||
else if (line.Contains("\"") && line.IndexOf("\"", StringComparison.Ordinal) > 2 && line.IndexOf("\"", StringComparison.Ordinal) < line.Length - 3)
|
||||
{
|
||||
int index = line.IndexOf("\"");
|
||||
int index = line.IndexOf("\"", StringComparison.Ordinal);
|
||||
if (line[index - 1] == ' ')
|
||||
{
|
||||
p.Text = p.Text.Trim() + "\"";
|
||||
}
|
||||
else if (line[index + 1] == ' ')
|
||||
{
|
||||
if (line.Length > 5 && p.Text.IndexOf(Environment.NewLine + "- ") >= 0)
|
||||
p.Text = p.Text.Insert(p.Text.IndexOf(Environment.NewLine + "- ") + Environment.NewLine.Length + 2, "\"");
|
||||
if (line.Length > 5 && p.Text.IndexOf(Environment.NewLine + "- ", StringComparison.Ordinal) >= 0)
|
||||
p.Text = p.Text.Insert(p.Text.IndexOf(Environment.NewLine + "- ", StringComparison.Ordinal) + Environment.NewLine.Length + 2, "\"");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2146,13 +2146,13 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
|
||||
if (p.Text.Length > 4)
|
||||
{
|
||||
int indexOfNewLine = p.Text.IndexOf(Environment.NewLine + " -", 3);
|
||||
int indexOfNewLine = p.Text.IndexOf(Environment.NewLine + " -", 3, StringComparison.Ordinal);
|
||||
if (indexOfNewLine == -1)
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "-", 3);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "-", 3, StringComparison.Ordinal);
|
||||
if (indexOfNewLine == -1)
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "<i>-", 3);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "<i>-", 3, StringComparison.Ordinal);
|
||||
if (indexOfNewLine == -1)
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "<i> -", 3);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "<i> -", 3, StringComparison.Ordinal);
|
||||
if (indexOfNewLine > 0)
|
||||
{
|
||||
if (Configuration.Settings.General.UppercaseLetters.Contains(p.Text[indexOfNewLine - 1].ToString().ToUpper()))
|
||||
@ -2464,40 +2464,40 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (p.Text.Length > 4)
|
||||
{
|
||||
int len = 0;
|
||||
int indexOfNewLine = p.Text.IndexOf(Environment.NewLine + " -", 1);
|
||||
int indexOfNewLine = p.Text.IndexOf(Environment.NewLine + " -", 1, StringComparison.Ordinal);
|
||||
if (indexOfNewLine == -1)
|
||||
{
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "- <i> ♪", 1);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "- <i> ♪", 1, StringComparison.Ordinal);
|
||||
len = "- <i> ♪".Length;
|
||||
}
|
||||
if (indexOfNewLine == -1)
|
||||
{
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "-", 1);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "-", 1, StringComparison.Ordinal);
|
||||
len = "-".Length;
|
||||
}
|
||||
if (indexOfNewLine == -1)
|
||||
{
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "<i>-", 1);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "<i>-", 1, StringComparison.Ordinal);
|
||||
len = "<i>-".Length;
|
||||
}
|
||||
if (indexOfNewLine == -1)
|
||||
{
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "<i> -", 1);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "<i> -", 1, StringComparison.Ordinal);
|
||||
len = "<i> -".Length;
|
||||
}
|
||||
if (indexOfNewLine == -1)
|
||||
{
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "♪ -", 1);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "♪ -", 1, StringComparison.Ordinal);
|
||||
len = "♪ -".Length;
|
||||
}
|
||||
if (indexOfNewLine == -1)
|
||||
{
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "♪ <i> -", 1);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "♪ <i> -", 1, StringComparison.Ordinal);
|
||||
len = "♪ <i> -".Length;
|
||||
}
|
||||
if (indexOfNewLine == -1)
|
||||
{
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "♪ <i>-", 1);
|
||||
indexOfNewLine = p.Text.IndexOf(Environment.NewLine + "♪ <i>-", 1, StringComparison.Ordinal);
|
||||
len = "♪ <i>-".Length;
|
||||
}
|
||||
|
||||
@ -2677,7 +2677,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
else if (p.Text.Substring(j).StartsWith("<u>"))
|
||||
skipCount = 2;
|
||||
else if (p.Text.Substring(j).StartsWith("<font ") && p.Text.Substring(j).Contains(">"))
|
||||
skipCount = p.Text.Substring(j).IndexOf(">") - p.Text.Substring(j).IndexOf("<font ");
|
||||
skipCount = p.Text.Substring(j).IndexOf(">", StringComparison.Ordinal) - p.Text.Substring(j).IndexOf("<font ", StringComparison.Ordinal);
|
||||
else if (IsTurkishLittleI(s, _encoding, Language))
|
||||
{
|
||||
p.Text = p.Text.Remove(j, 1).Insert(j, GetTurkishUppercaseLetter(s, _encoding));
|
||||
@ -2848,11 +2848,11 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
else
|
||||
{
|
||||
int index = text.IndexOf(". -");
|
||||
int index = text.IndexOf(". -", StringComparison.Ordinal);
|
||||
if (index < 0)
|
||||
index = text.IndexOf("! -");
|
||||
index = text.IndexOf("! -", StringComparison.Ordinal);
|
||||
if (index < 0)
|
||||
index = text.IndexOf("? -");
|
||||
index = text.IndexOf("? -", StringComparison.Ordinal);
|
||||
if (index > 0)
|
||||
{
|
||||
text = text.Remove(index + 1, 1).Insert(index + 1, Environment.NewLine);
|
||||
@ -3045,19 +3045,19 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
|
||||
if (remove)
|
||||
{
|
||||
int idx = text.IndexOf("-");
|
||||
int idx = text.IndexOf("-", StringComparison.Ordinal);
|
||||
var st = new StripableText(text);
|
||||
if (idx < 5 && st.Pre.Length >= idx)
|
||||
{
|
||||
text = text.Remove(idx, 1).TrimStart();
|
||||
idx = text.IndexOf("-");
|
||||
idx = text.IndexOf("-", StringComparison.Ordinal);
|
||||
st = new StripableText(text);
|
||||
if (idx < 5 && idx >= 0 && st.Pre.Length >= idx)
|
||||
{
|
||||
text = text.Remove(idx, 1).TrimStart();
|
||||
st = new StripableText(text);
|
||||
}
|
||||
idx = text.IndexOf("-");
|
||||
idx = text.IndexOf("-", StringComparison.Ordinal);
|
||||
if (idx < 5 && idx >= 0 && st.Pre.Length >= idx)
|
||||
text = text.Remove(idx, 1).TrimStart();
|
||||
|
||||
@ -3070,12 +3070,12 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
int idxNL = text.IndexOf(Environment.NewLine);
|
||||
if (idxNL > 0)
|
||||
{
|
||||
idx = text.IndexOf("-", idxNL);
|
||||
idx = text.IndexOf("-", idxNL, StringComparison.Ordinal);
|
||||
if (idx >= 0 && idxNL + 5 > idxNL)
|
||||
{
|
||||
text = text.Remove(idx, 1).TrimStart().Replace(Environment.NewLine + " ", Environment.NewLine);
|
||||
|
||||
idx = text.IndexOf("-", idxNL);
|
||||
idx = text.IndexOf("-", idxNL, StringComparison.Ordinal);
|
||||
if (idx >= 0 && idxNL + 5 > idxNL)
|
||||
{
|
||||
text = text.Remove(idx, 1).TrimStart();
|
||||
@ -3179,7 +3179,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
|
||||
if (doAdd)
|
||||
{
|
||||
int idx = text.IndexOf("-");
|
||||
int idx = text.IndexOf("-", StringComparison.Ordinal);
|
||||
if (idx < 5)
|
||||
{
|
||||
// add dash in second line.
|
||||
@ -4259,14 +4259,14 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (!skip)
|
||||
{
|
||||
int startIndex = 0;
|
||||
int markIndex = p.Text.IndexOf(mark);
|
||||
if (!wasLastLineClosed && ((p.Text.IndexOf("!") > 0 && p.Text.IndexOf("!") < markIndex) ||
|
||||
(p.Text.IndexOf("?") > 0 && p.Text.IndexOf("?") < markIndex) ||
|
||||
(p.Text.IndexOf(".") > 0 && p.Text.IndexOf(".") < markIndex)))
|
||||
int markIndex = p.Text.IndexOf(mark, StringComparison.Ordinal);
|
||||
if (!wasLastLineClosed && ((p.Text.IndexOf("!", StringComparison.Ordinal) > 0 && p.Text.IndexOf("!", StringComparison.Ordinal) < markIndex) ||
|
||||
(p.Text.IndexOf("?", StringComparison.Ordinal) > 0 && p.Text.IndexOf("?", StringComparison.Ordinal) < markIndex) ||
|
||||
(p.Text.IndexOf(".", StringComparison.Ordinal) > 0 && p.Text.IndexOf(".", StringComparison.Ordinal) < markIndex)))
|
||||
wasLastLineClosed = true;
|
||||
while (markIndex > 0 && startIndex < p.Text.Length)
|
||||
{
|
||||
int inverseMarkIndex = p.Text.IndexOf(inverseMark, startIndex);
|
||||
int inverseMarkIndex = p.Text.IndexOf(inverseMark, startIndex, StringComparison.Ordinal);
|
||||
if (wasLastLineClosed && (inverseMarkIndex == -1 || inverseMarkIndex > markIndex))
|
||||
{
|
||||
if (AllowFix(p, fixAction))
|
||||
@ -4302,16 +4302,16 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
string part = p.Text.Substring(j, markIndex - j + 1);
|
||||
|
||||
string speaker = string.Empty;
|
||||
int speakerEnd = part.IndexOf(")");
|
||||
if (part.StartsWith("(") && speakerEnd > 0 && speakerEnd < part.IndexOf(mark))
|
||||
int speakerEnd = part.IndexOf(")", StringComparison.Ordinal);
|
||||
if (part.StartsWith("(") && speakerEnd > 0 && speakerEnd < part.IndexOf(mark, StringComparison.Ordinal))
|
||||
{
|
||||
while (Environment.NewLine.Contains(part[speakerEnd + 1].ToString()))
|
||||
speakerEnd++;
|
||||
speaker = part.Substring(0, speakerEnd + 1);
|
||||
part = part.Substring(speakerEnd + 1);
|
||||
}
|
||||
speakerEnd = part.IndexOf("]");
|
||||
if (part.StartsWith("[") && speakerEnd > 0 && speakerEnd < part.IndexOf(mark))
|
||||
speakerEnd = part.IndexOf("]", StringComparison.Ordinal);
|
||||
if (part.StartsWith("[") && speakerEnd > 0 && speakerEnd < part.IndexOf(mark, StringComparison.Ordinal))
|
||||
{
|
||||
while (Environment.NewLine.Contains(part[speakerEnd + 1].ToString()))
|
||||
speakerEnd++;
|
||||
@ -4348,7 +4348,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (last != null && !wasLastLineClosed && inverseMarkIndex == p.Text.IndexOf(mark) && !last.Text.Contains(inverseMark))
|
||||
else if (last != null && !wasLastLineClosed && inverseMarkIndex == p.Text.IndexOf(mark, StringComparison.Ordinal) && !last.Text.Contains(inverseMark))
|
||||
{
|
||||
string lastOldtext = last.Text;
|
||||
int idx = last.Text.Length - 2;
|
||||
@ -4363,7 +4363,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
|
||||
startIndex = markIndex + 2;
|
||||
if (startIndex < p.Text.Length)
|
||||
markIndex = p.Text.IndexOf(mark, startIndex);
|
||||
markIndex = p.Text.IndexOf(mark, startIndex, StringComparison.Ordinal);
|
||||
else
|
||||
markIndex = -1;
|
||||
wasLastLineClosed = true;
|
||||
@ -4376,7 +4376,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
}
|
||||
else if (Utilities.CountTagInText(p.Text, inverseMark) == 1)
|
||||
{
|
||||
int idx = p.Text.IndexOf(inverseMark);
|
||||
int idx = p.Text.IndexOf(inverseMark, StringComparison.Ordinal);
|
||||
while (idx < p.Text.Length && !".!?".Contains(p.Text[idx].ToString()))
|
||||
{
|
||||
idx++;
|
||||
|
@ -250,9 +250,9 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (index < _translatedSubtitle.Paragraphs.Count)
|
||||
{
|
||||
string cleanText = s.Replace("</p>", string.Empty).Trim();
|
||||
int indexOfP = cleanText.IndexOf(_splitterString.Trim());
|
||||
int indexOfP = cleanText.IndexOf(_splitterString.Trim(), StringComparison.Ordinal);
|
||||
if (indexOfP >= 0 && indexOfP < 4)
|
||||
cleanText = cleanText.Remove(0, cleanText.IndexOf(_splitterString.Trim()));
|
||||
cleanText = cleanText.Remove(0, cleanText.IndexOf(_splitterString.Trim(), StringComparison.Ordinal));
|
||||
cleanText = cleanText.Replace(_splitterString.Trim(), string.Empty).Trim();
|
||||
if (cleanText.Contains("\n") && !cleanText.Contains("\r"))
|
||||
cleanText = cleanText.Replace("\n", Environment.NewLine);
|
||||
@ -336,8 +336,8 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
string key = "{\"translatedText\":";
|
||||
if (content.Contains(key))
|
||||
{
|
||||
int start = content.IndexOf(key) + key.Length + 1;
|
||||
int end = content.IndexOf("\"}", start);
|
||||
int start = content.IndexOf(key, StringComparison.Ordinal) + key.Length + 1;
|
||||
int end = content.IndexOf("\"}", start, StringComparison.Ordinal);
|
||||
string translatedText = content.Substring(start, end - start);
|
||||
string test = translatedText.Replace("\\u003c", "<");
|
||||
test = test.Replace("\\u003e", ">");
|
||||
@ -361,14 +361,12 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
private static string RemovePStyleParameters(string test)
|
||||
{
|
||||
string key = "<p style";
|
||||
while (test.Contains(key))
|
||||
int startPosition = test.IndexOf(key, StringComparison.Ordinal);
|
||||
while (startPosition >= 0)
|
||||
{
|
||||
int startPosition = test.IndexOf(key);
|
||||
int endPosition = test.IndexOf(">", startPosition + key.Length);
|
||||
if (endPosition == -1)
|
||||
return test;
|
||||
test = test.Remove(startPosition + 2, endPosition - startPosition - 2);
|
||||
|
||||
int endPosition = test.IndexOf(">", startPosition + key.Length, StringComparison.Ordinal);
|
||||
if (endPosition > 0)
|
||||
return test.Remove(startPosition + 2, endPosition - startPosition - 2);
|
||||
}
|
||||
return test;
|
||||
}
|
||||
|
@ -18473,7 +18473,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
fileName = fileName.Substring(0, fileName.Length - 1);
|
||||
fileName += ultech130.Extension;
|
||||
}
|
||||
ultech130.Save(fileName, _subtitle);
|
||||
Ultech130.Save(fileName, _subtitle);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -12,7 +12,6 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
{
|
||||
List<Paragraph> _paragraphs;
|
||||
VideoInfo _videoInfo;
|
||||
string _totalPositionString = string.Empty;
|
||||
string _subtitleFileName;
|
||||
Subtitle _originalSubtitle;
|
||||
double _oldFramerate;
|
||||
@ -237,9 +236,6 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (!string.IsNullOrEmpty(_videoInfo.VideoCodec))
|
||||
labelVideoInfo.Text += string.Format(_languageGeneral.VideoEncodingX, _videoInfo.VideoCodec) + " ";
|
||||
|
||||
TimeSpan span = TimeSpan.FromMilliseconds(_videoInfo.TotalMilliseconds);
|
||||
_totalPositionString = " / " + string.Format("{0:00}:{1:00}:{2:00},{3:000}", span.Hours, span.Minutes, span.Seconds, span.Milliseconds);
|
||||
|
||||
return _videoInfo;
|
||||
}
|
||||
|
||||
|
@ -4479,7 +4479,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
private string FixNocrHardcodedStuff(string line)
|
||||
{
|
||||
// fix I/l
|
||||
int start = line.IndexOf("I");
|
||||
int start = line.IndexOf("I", StringComparison.Ordinal);
|
||||
while (start > 0)
|
||||
{
|
||||
if (start > 0 && line[start - 1].ToString() != line[start - 1].ToString().ToUpper())
|
||||
@ -4495,7 +4495,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (start < line.Length - 1 && line[start + 1].ToString() != line[start + 1].ToString().ToLower())
|
||||
line = line.Remove(start, 1).Insert(start, "I");
|
||||
start++;
|
||||
start = line.IndexOf("l", start);
|
||||
start = line.IndexOf("l", start, StringComparison.Ordinal);
|
||||
}
|
||||
if (line.Contains("l"))
|
||||
{
|
||||
@ -5720,14 +5720,14 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
{
|
||||
string s = html.Replace("<em>", "@001_____").Replace("</em>", "@002_____");
|
||||
|
||||
int first = s.IndexOf("<");
|
||||
int first = s.IndexOf("<", StringComparison.Ordinal);
|
||||
while (first >= 0)
|
||||
{
|
||||
int last = s.IndexOf(">", first);
|
||||
int last = s.IndexOf(">", first, StringComparison.Ordinal);
|
||||
if (last > 0)
|
||||
{
|
||||
s = s.Remove(first, last - first + 1);
|
||||
first = s.IndexOf("<");
|
||||
first = s.IndexOf("<", StringComparison.Ordinal);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -6468,7 +6468,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (s.StartsWith("I <i>"))
|
||||
s = ("<i>I " + s.Remove(0, 5)).Replace(" ", " ");
|
||||
else if (italicStartCount == 1 && s.Length > 20 &&
|
||||
s.IndexOf("<i>") > 1 && s.IndexOf("<i>") < 10 && s.EndsWith("</i>"))
|
||||
s.IndexOf("<i>", StringComparison.Ordinal) > 1 && s.IndexOf("<i>", StringComparison.Ordinal) < 10 && s.EndsWith("</i>"))
|
||||
s = "<i>" + s.Replace("<i>", string.Empty).Replace("</i>", string.Empty) + "</i>";
|
||||
s = s.Replace("</i>" + Environment.NewLine + "<i>", Environment.NewLine);
|
||||
return s;
|
||||
@ -7038,7 +7038,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
string text = lb.Items[lb.SelectedIndex].ToString();
|
||||
if (text.Contains(":"))
|
||||
{
|
||||
string number = text.Substring(1, text.IndexOf(":") - 1);
|
||||
string number = text.Substring(1, text.IndexOf(":", StringComparison.Ordinal) - 1);
|
||||
subtitleListView1.SelectIndexAndEnsureVisible(int.Parse(number) - 1);
|
||||
}
|
||||
}
|
||||
@ -7972,7 +7972,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
if (_ocrFixEngine == null)
|
||||
comboBoxDictionaries_SelectedIndexChanged(null, null);
|
||||
|
||||
text = text.Substring(text.IndexOf(":") + 1).Trim();
|
||||
text = text.Substring(text.IndexOf(":", StringComparison.Ordinal) + 1).Trim();
|
||||
var form = new AddToNamesList();
|
||||
form.Initialize(_subtitle, comboBoxDictionaries.Text, text);
|
||||
if (form.ShowDialog(this) == DialogResult.OK)
|
||||
@ -7995,7 +7995,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
string text = listBoxUnknownWords.SelectedItems[0].ToString();
|
||||
if (text.Contains(":"))
|
||||
{
|
||||
text = text.Substring(text.IndexOf(":") + 1).Trim().ToLower();
|
||||
text = text.Substring(text.IndexOf(":", StringComparison.Ordinal) + 1).Trim().ToLower();
|
||||
var form = new AddToUserDic();
|
||||
form.Initialize(comboBoxDictionaries.Text, text);
|
||||
if (form.ShowDialog(this) == DialogResult.OK)
|
||||
@ -8018,7 +8018,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
string text = listBoxUnknownWords.SelectedItems[0].ToString();
|
||||
if (text.Contains(":"))
|
||||
{
|
||||
text = text.Substring(text.IndexOf(":") + 1).Trim().ToLower();
|
||||
text = text.Substring(text.IndexOf(":", StringComparison.Ordinal) + 1).Trim().ToLower();
|
||||
var form = new AddToOcrReplaceList();
|
||||
form.Initialize(_languageId, comboBoxDictionaries.Text, text);
|
||||
if (form.ShowDialog(this) == DialogResult.OK)
|
||||
@ -8041,7 +8041,7 @@ namespace Nikse.SubtitleEdit.Forms
|
||||
string text = listBoxUnknownWords.SelectedItems[0].ToString();
|
||||
if (text.Contains(":"))
|
||||
{
|
||||
text = text.Substring(text.IndexOf(":") + 1).Trim();
|
||||
text = text.Substring(text.IndexOf(":", StringComparison.Ordinal) + 1).Trim();
|
||||
System.Diagnostics.Process.Start("http://www.google.com/search?q=" + Utilities.UrlEncode(text));
|
||||
}
|
||||
}
|
||||
|
@ -45,19 +45,19 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
|
||||
if (text.StartsWith("{\\"))
|
||||
{
|
||||
int endIndex = text.IndexOf("}");
|
||||
if (endIndex > 0 && (text.IndexOf("{", 1) == -1 || text.IndexOf("{", 1) > endIndex))
|
||||
int endIndex = text.IndexOf("}", StringComparison.Ordinal);
|
||||
if (endIndex > 0 && (text.IndexOf("{", 1, StringComparison.Ordinal) == -1 || text.IndexOf("{", 1, StringComparison.Ordinal) > endIndex))
|
||||
{
|
||||
int index = text.IndexOf("}") + 1;
|
||||
int index = text.IndexOf("}", StringComparison.Ordinal) + 1;
|
||||
Pre += text.Substring(0, index);
|
||||
text = text.Substring(index);
|
||||
}
|
||||
}
|
||||
|
||||
// tags like <i> or <font color="#ff0000">
|
||||
if (text.StartsWith("<") && text.IndexOf(">") <= 21)
|
||||
if (text.StartsWith("<") && text.IndexOf(">", StringComparison.Ordinal) <= 21)
|
||||
{
|
||||
int index = text.IndexOf(">") + 1;
|
||||
int index = text.IndexOf(">", StringComparison.Ordinal) + 1;
|
||||
Pre += text.Substring(0, index);
|
||||
text = text.Substring(index);
|
||||
}
|
||||
@ -127,7 +127,7 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
|
||||
foreach (string name in namesEtc)
|
||||
{
|
||||
int start = lower.IndexOf(name.ToLower());
|
||||
int start = lower.IndexOf(name.ToLower(), StringComparison.Ordinal);
|
||||
while (start >= 0 && start < lower.Length)
|
||||
{
|
||||
bool startOk = (start == 0) || (lower[start - 1] == ' ') || (lower[start - 1] == '-') ||
|
||||
@ -153,7 +153,7 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
if (start + 3 > lower.Length)
|
||||
start = lower.Length + 1;
|
||||
else
|
||||
start = lower.IndexOf(name.ToLower(), start +3);
|
||||
start = lower.IndexOf(name.ToLower(), start + 3, StringComparison.Ordinal);
|
||||
}
|
||||
}
|
||||
|
||||
@ -263,9 +263,9 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
sb.Append(s);
|
||||
if (".!?:;)]}([{".Contains(s))
|
||||
{
|
||||
if (s == "]" && sb.ToString().IndexOf("[") > 1)
|
||||
if (s == "]" && sb.ToString().IndexOf("[", StringComparison.Ordinal) > 1)
|
||||
{ // I [Motor roaring] love you!
|
||||
string temp = sb.ToString().Substring(0, sb.ToString().IndexOf("[") - 1).Trim();
|
||||
string temp = sb.ToString().Substring(0, sb.ToString().IndexOf("[", StringComparison.Ordinal) - 1).Trim();
|
||||
if (temp.Length > 0 && !Utilities.LowercaseLetters.Contains(temp[temp.Length - 1].ToString()))
|
||||
lastWasBreak = true;
|
||||
}
|
||||
|
@ -28,7 +28,7 @@ namespace Nikse.SubtitleEdit.Logic.SubtitleFormats
|
||||
get { return true; }
|
||||
}
|
||||
|
||||
public void Save(string fileName, Subtitle subtitle)
|
||||
public static void Save(string fileName, Subtitle subtitle)
|
||||
{
|
||||
var fs = new FileStream(fileName, FileMode.Create, FileAccess.Write);
|
||||
|
||||
|
@ -234,7 +234,7 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
return subtitle;
|
||||
}
|
||||
|
||||
private Subtitle ImportTimeCodesOnAloneLines(string[] lines)
|
||||
private static Subtitle ImportTimeCodesOnAloneLines(string[] lines)
|
||||
{
|
||||
Paragraph p = null;
|
||||
var subtitle = new Subtitle();
|
||||
@ -289,7 +289,7 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
return subtitle;
|
||||
}
|
||||
|
||||
private Subtitle ImportTimeCodesAndTextOnSameLine(string[] lines)
|
||||
private static Subtitle ImportTimeCodesAndTextOnSameLine(string[] lines)
|
||||
{
|
||||
Regex regexTimeCodes1 = new Regex(@"\d+[:.,;]{1}\d\d[:.,;]{1}\d\d[:.,;]{1}\d+", RegexOptions.Compiled);
|
||||
Regex regexTimeCodes2 = new Regex(@"\d+[:.,;]{1}\d\d[:.,;]{1}\d+", RegexOptions.Compiled);
|
||||
@ -410,7 +410,7 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
return subtitle;
|
||||
}
|
||||
|
||||
private Subtitle ImportTimeCodesAndTextOnSameLineOnlySpaceAsSeperator(string[] lines)
|
||||
private static Subtitle ImportTimeCodesAndTextOnSameLineOnlySpaceAsSeperator(string[] lines)
|
||||
{
|
||||
Regex regexTimeCodes1 = new Regex(@"\d+ {1}\d\d {1}\d\d {1}\d+", RegexOptions.Compiled);
|
||||
Regex regexTimeCodes2 = new Regex(@"\d+ {1}\d\d {1}\d+", RegexOptions.Compiled);
|
||||
@ -565,7 +565,7 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
return subtitle;
|
||||
}
|
||||
|
||||
private Subtitle ImportTimeCodesOnSameSeperateLineNoMilliseconds(string[] lines)
|
||||
private static Subtitle ImportTimeCodesOnSameSeperateLineNoMilliseconds(string[] lines)
|
||||
{
|
||||
Paragraph p = null;
|
||||
var subtitle = new Subtitle();
|
||||
|
@ -267,7 +267,7 @@ namespace Nikse.SubtitleEdit.Logic.VideoPlayers
|
||||
}
|
||||
finally
|
||||
{
|
||||
vlc.DisposeVideoPlayer();
|
||||
vlc.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user