/// <summary> /// Returns the whole pattern of a persian written number /// </summary> internal string PersianNumberPattern() { string ThreeDB = ThreeDigitBlockPattern(); string BlockAndMult = BlockPlusMultiplier(); string MultPlus3DB = RegexPatternCreator.CreateGroup("", RegexPatternCreator.ClosurePlus( RegexPatternCreator.CreateGroup("", BlockAndMult, RegexPatternCreator.BetWordWSPlus, "و", RegexPatternCreator.BetWordWSPlus ) ), RegexPatternCreator.ClosureQuestionMark( ThreeDB ) ); string MultPlus = RegexPatternCreator.CreateGroup("", BlockAndMult, RegexPatternCreator.ClosureStar(RegexPatternCreator.CreateGroup("", RegexPatternCreator.BetWordWSPlus, "و", RegexPatternCreator.BetWordWSPlus, BlockAndMult )), RegexPatternCreator.ClosureQuestionMark(RegexPatternCreator.CreateGroup("", RegexPatternCreator.BetWordWSPlus, "و", RegexPatternCreator.BetWordWSPlus, ThreeDB )) ); string numberPattern = RegexPatternCreator.CreateGroup("", RegexPatternCreator.CreateOR(true, MultPlus, ThreeDB) ); return(@"\b" + RegexPatternCreator.CreateOR(false, numberPattern, "(صفرم)", "(صفر)") + @"\b"); }