日期:2014-05-19  浏览次数:21222 次

【50分求一正则表达式】。。。。。。。。。。。。。。。。。。

" <FORM   id=logInForm   name=logInForm   action=chk_rule.php   method=post> <INPUT   type=hidden   value=nf3a5776z23th8npzppq54z1j0d9z032   name=uid>   </FORM> "


请兄弟帮忙把   value   单独取出来。。谢谢。


另外,是否帮忙写一个通用正则?

比如说,从一段字符串中,输入开始和结束的字符,取中间的字符,
可否能实现?如果可以,请在本贴也指点,本人会另开贴送上一百分,谢谢。

------解决方案--------------------
如果仅仅限于你提供的字符串例子,

string s = " <FORM id=logInForm name=logInForm action=chk_rule.php method=post> <INPUT type=hidden value=nf3a5776z23th8npzppq54z1j0d9z032 name=uid>

</FORM> ";

Regex re = new Regex(@ "\s+value=([^\s> ]+) ");

Match m = re.Match(s);
if (m.Success)
Console.WriteLine(m.Groups[1].Value);

如果你的那些起始,结束字符都是固定的,即不是带正则元字符的,其实用IndexOf也许更好些

string Start = "... ";
string End = "... ";


string s = "............ ";

int i = s.IndexOf(Start);
if (i > =0)
{
int j= s.IndexOf(End, i+Start.Length);
if (j > 0)
{
string Result = s.Substring(i+Start.Length, j-i-Start.Length);
}
}