+++19+++---16--- produces 2015.
- PRESS F5 TO INC +++n+++ AND DEC ---n---
- =======================================
public string ProcessArticle(string ArticleText, string ArticleTitle, int wikiNamespace, out string Summary, out bool Skip)
{
Skip = false;
Summary = "";
// Created to give AWB increment/decrement functions.
// User:Tom.Reding/Inc & Dec AWB Module
string pattern_inc = @"(?:(\+\+\+)(\d+)(\+\+\+))"; // regex pattern for incrementation
string pattern_dec = @"(?:(---)(\d+)(---))"; // regex pattern for decrementation
string pattern_instructions = @"(PRESS F5 TO INC \+\+\+n\+\+\+ AND DEC ---n---(\s+\=+\s{0,2})?)";
string matched_text;
string matched_num;
int numi;
string incremented_num;
string decremented_num;
// increment
Match m = Regex.Match(ArticleText, pattern_inc);
if (m.Success)
{
matched_text = m.Value;
matched_num = matched_text.Trim('+');
numi = Convert.ToInt32(matched_num);
numi = numi + 1;
incremented_num = numi.ToString();
ArticleText = Regex.Replace(ArticleText, pattern_inc, incremented_num);
}
// decrement
Match m2 = Regex.Match(ArticleText, pattern_dec);
if (m2.Success)
{
matched_text = m2.Value;
matched_num = matched_text.Trim('-');
numi = Convert.ToInt32(matched_num);
numi = numi - 1;
decremented_num = numi.ToString();
ArticleText = Regex.Replace(ArticleText, pattern_dec, decremented_num);
}
// cleanup: remove instructions
Match m3 = Regex.Match(ArticleText, pattern_instructions);
if (m3.Success)
{
ArticleText = Regex.Replace(ArticleText, pattern_instructions, "");
}
return ArticleText;
}
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.