(已解决)正则提取网页中想要的信息问题
本帖最后由 xiezhang6263 于 2011-4-30 23:05 编辑<HTML>
<HEAD>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<title>某某管理信息系统</title>
<link rel="stylesheet" href="/pzweb/Common/MainPZ.css">
<link rel="stylesheet" href="/pzweb/Common/xmenu.css">
<script language="javascript"type="text/javascript" SRC="/pzweb/Common/tablesort.js"></script>
<script language="javascript"type="text/javascript" SRC="/pzweb/Common/selectableelements.js"></script>
<script language="javascript"type="text/javascript" SRC="/pzweb/Common/selectabletablerows.js"></script>
<script language="javascript"type="text/javascript" SRC="/pzweb/Common/cssexpr.js"></script>
<script language="javascript"type="text/javascript" SRC="/pzweb/Common/xmenu.js"></script>
<script language="javascript" SRC="/pzweb/Common/FunDefine.js"></script>
<script language="javascript" SRC="/pzweb/Common/JcCheck.js"></script>
<script language="javascript" SRC="/pzweb/Common/dateFormat.js"></script>
<script language="javascript" SRC="/pzweb/Common/fwt_dmwh.js"></script>
<SCRIPT LANGUAGE=javascript FOR=window EVENT=window_onunload>
//alert("注销会话");
//window.location.href = '/pzweb/appLogout.do';
</SCRIPT>
<SCRIPTLANGUAGE=javascript>
<!--
function window_onunload() {
window.location.href = '/pzweb/appLogout.do';
}
//webfxMenuUseHover = true;
webfxMenuImagePath = "/pzweb/images/";
//-->
</SCRIPT>
</HEAD>
<body bgcolor="#ffffff" text="#000000" link="#023264" alink="#023264" vlink="#023264" onload="return edit_window_onload()">
<table border="0" width="100%" cellspacing="1">
<tr>
<td valign="top"align="center">
<table topmargin="0" cellspacing="0" leftmargin="0" border="0" height="100%" width="100%">
<tr>
<td valign="top" colspan="1">
<SCRIPTLANGUAGE=javascript>
<!--
function edit_window_onload() {
try{
window_onload();
}catch(e){}
try{
window_saveOK();
}catch(e){}
}
//-->
</SCRIPT>
<form name="SysSfhyForm" id="SysSfhyform1" method="post" action="/pzweb/SysSfhy.do">
<TABLE class="i-03-prompt-tbl" cellspacing="0" cellpadding="0">
<TR>
<TD class="i-03-prompt-td-1"></TD>
<TD class="i-03-prompt-td">身份核验查询条件</TD>
<TD class="i-03-prompt-td-3"></TD>
</TR>
</TABLE>
<TABLE class="i-03-tbl" cellspacing="0" cellpadding="0">
<TR>
<TD class="i-03-tbl-rect-1"></TD>
<TD class="i-03-tbl-rect-2"></TD>
<TD class="i-03-tbl-rect-3"></TD>
</TR>
<TR>
<TD class="i-03-tbl-rect-8"></TD>
<TD>
<TABLE width="100%" border="0" cellspacing="2" cellpadding="0">
<tr height = 0>
<td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/>
<td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/>
<td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/>
<td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/>
<td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/>
<td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/>
<td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/>
<td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/><td width="2.5%"/>
</tr>
<TR>
<TD COLSPAN=7 class="i-03-td-title">
公民身份号码
</TD>
<TD COLSPAN=7 class="i-03-td">
<input type="text" name="czrkgmsfhm" value="522631199002105132" onkeydown="javascript:filterKey();" onblur="this.value=ChangeID(this.value)" class="QueryBarInputBox">
</TD>
<TD COLSPAN=4 class="i-03-td-title">
姓名
</TD>
<TD COLSPAN=5 class="i-03-td">
<input type="text" name="czrkxm" value="" onkeydown="javascript:filterKey();" class="QueryBarInputBox">
</TD>
<TD COLSPAN=5 class="i-03-td-title">
出生日期
</TD>
<TD COLSPAN=12 class="i-03-td">
<input type="hidden" name="jczdyczrkcsrq_1Pattern" value="####-##-##"><input type="text" name="jczdyczrkcsrq_1Mask" value="" onkeydown="javascript:filterKey();" style="width:35%" class="QueryBarInputBoxRange"><span id="jczdyczrkcsrq_1Mask_span" class="OperateIcon" onclick='javascript:fPopCalendar(document.all["jczdyczrkcsrq_1Mask"],document.all["jczdyczrkcsrq_1Mask"])'><img src="/pzweb/images/calender.jpg" id="jczdyczrkcsrq_1Mask_img" border="0" WIDTH="16" HEIGHT="16"></span>→<input type="hidden" name="jczdyczrkcsrq_2Pattern" value="####-##-##"><input type="text" name="jczdyczrkcsrq_2Mask" value="" onkeydown="javascript:filterKey();" style="width:35%" class="QueryBarInputBoxRange"><span id="jczdyczrkcsrq_2Mask_span" class="OperateIcon" onclick='javascript:fPopCalendar(document.all["jczdyczrkcsrq_2Mask"],document.all["jczdyczrkcsrq_2Mask"])'><img src="/pzweb/images/calender.jpg" id="jczdyczrkcsrq_2Mask_img" border="0" WIDTH="16" HEIGHT="16"></span>
</TD>
</TR>
<TR>
<TD COLSPAN=7 class="i-03-td-title" title="必须填写到县(市、区)一级">
所属省市县区
</TD>
<TD COLSPAN=18 class="i-03-td">
<input type="hidden" name="czrkssssxq" value=""><select id="czrkssssxq_province_select" name="czrkssssxq_province_select" onchange="javascript:refreshList('czrkssssxq','p');" style="width:32%"onmousedown="javascript:changeSelectWidth(this);" title="鼠标右键单击可以将本控件宽度调整到合适大小,再次右键单击可回复到原始大小"><option value="" SELECTED>-请选择省-</option><option value="11">北京市</option><option value="12">天津市</option><option value="13">河北省</option><option value="14">山西省</option><option value="15">内蒙古自治区</option><option value="21">辽宁省</option><option value="22">吉林省</option><option value="23">黑龙江省</option><option value="31">上海市</option><option value="32">江苏省</option><option value="33">浙江省</option><option value="34">安徽省</option><option value="35">福建省</option><option value="36">江西省</option><option value="37">山东省</option><option value="41">河南省</option><option value="42">湖北省</option><option value="43">湖南省</option><option value="44">广东省</option><option value="45">广西壮族自治区</option><option value="46">海南省</option><option value="50">重庆市</option><option value="51">四川省</option><option value="52">贵州省</option><option value="53">云南省</option><option value="54">西藏自治区</option><option value="61">陕西省</option><option value="62">甘肃省</option><option value="63">青海省</option><option value="64">宁夏回族自治区</option><option value="65">新疆维吾尔自治区</option><option value="71">台湾省</option><option value="81">香港特别行政区</option><option value="82">澳门特别行政区</option></select><select id="czrkssssxq_city_select" name="czrkssssxq_city_select" onchange="javascript:refreshList('czrkssssxq','c');" style="width:32%"onmousedown="javascript:changeSelectWidth(this);" title="鼠标右键单击可以将本控件宽度调整到合适大小,再次右键单击可回复到原始大小"><option value="" SELECTED>-请选择市-</option></select><select id="czrkssssxq_section_select" name="czrkssssxq_section_select" onchange="refreshList('czrkssssxq','s');" style="width:32%"onmousedown="javascript:changeSelectWidth(this);" title="鼠标右键单击可以将本控件宽度调整到合适大小,再次右键单击可回复到原始大小"><option value="" SELECTED>-请选择区县-</option></select><select id="czrkssssxq_pcs_select" name="czrkssssxq_pcs_select" onchange="refreshList('czrkssssxq','pcs');" style="display:none"onmousedown="javascript:changeSelectWidth(this);" title="鼠标右键单击可以将本控件宽度调整到合适大小,再次右键单击可回复到原始大小"><option value="" SELECTED>-请选择派出所-</option></select><select id="czrkssssxq_jwh_select" name="czrkssssxq_jwh_select" onchange="refreshList('czrkssssxq','jwh');" style="display:none"onmousedown="javascript:changeSelectWidth(this);" title="鼠标右键单击可以将本控件宽度调整到合适大小,再次右键单击可回复到原始大小"><option value="" SELECTED>-请选择居委会-</option></select><script LANGUAGE="javascript">setDefault('czrkssssxq');</script></select>
</TD>
<TD COLSPAN=4 class="i-03-td-title">
性别
</TD>
<TD COLSPAN=4 class="i-03-td">
<select name="czrkxb" onkeydown="javascript:filterKey();" class="QueryBarInputBox"><option value="" selected="selected"></option>
<option value="1">男</option>
<option value="2">女</option>
</select>
</TD>
<TD COLSPAN=6 class="i-03-td" ALIGN="right">
<input type="hidden" name="formAction" value="1">
<input type="hidden" name="pzmc" value="CzrkBaseVo">
<input type="Button" name="ButtonQuery" value='查 询' class="ButtonQuery" onclick='javascript:queryButton();'>
</TD>
</TR>
</TABLE>
</TD>
<TD class="i-03-tbl-rect-4"></TD>
</TR>
<TR>
<TD class="i-03-tbl-rect-7"></TD>
<TD class="i-03-tbl-rect-6"></TD>
<TD class="i-03-tbl-rect-5"></TD>
</TR>
</TABLE>
<TABLE width="100%" valign="top" border="0" cellspacing="0" cellpadding="0">
<TR height="20">
<TD></TD>
</TR>
</TABLE>
<TABLE class="e-01-prompt-tbl" cellspacing="0" cellpadding="0">
<TR>
<TD class="e-01-prompt-td-1"></TD>
<TD class="e-01-prompt-td">身份核验查询结果</TD>
<TD class="e-01-prompt-td-3"></TD>
</TR>
</TABLE>
<span id=savetext>
<TABLE id="CzrkBaseVoSt" class="e-01-tbl" onclick="try{sortColumn(event)}catch(e){}" width="100%" border="1" cellspacing="0" cellpadding="0" bordercolorlight="#E4E4E4" bordercolordark="#FFFFFF">
<THEAD>
<TR class="e-01-tbl-th-tr">
<TD colspan=1 class="e-01-tbl-th-td" Type="Number" >序号</TD>
<TD colspan=1 class="e-01-tbl-th-td" nowrap>公民身份号码</TD>
<TD colspan=1 class="e-01-tbl-th-td" nowrap>姓名</TD>
<TD colspan=1 class="e-01-tbl-th-td" nowrap>性别</TD>
<TD colspan=1 class="e-01-tbl-th-td" nowrap>出生日期</TD>
<TD colspan=1 class="e-01-tbl-th-td" nowrap>民族</TD>
<TD colspan=1 class="e-01-tbl-th-td" nowrap>所属省市县区(户籍地)</TD>
<TD colspan=1 class="e-01-tbl-th-td" nowrap>住址详址</TD>
<TD colspan=1 class="e-01-tbl-th-td" nowrap>操作</TD>
</TR>
</THEAD>
<script LANGUAGE="javascript">
var aryDmPkCzrkBaseVo = new Array(1 *1);
</script>
<tbody>
<TR class="e-01-tr-1" id='Row0' ondblclick="javascript:view();" onMouseOver="javascript:mouseOverRow(this);" onMouseOut="javascript:mouseOutRow(this);"title="曾用名:张某某
文化程度:小学
婚姻状况:未婚
籍贯:某某省某某县
服务处所:某某村
出生地详址:
" >
<TD colspan=1 class="e-01-td-r"
>1</TD>
<TD colspan=1 class="e-01-td" nowrap>
111111111111111111
</TD>
<TD colspan=1 class="e-01-td" nowrap>
张某某
</TD>
<TD colspan=1 class="e-01-td" nowrap>男</TD>
<TD colspan=1 class="e-01-td" nowrap>1990-02-10</TD>
<TD colspan=1 class="e-01-td" nowrap>侗族</TD>
<TD colspan=1 class="e-01-td" nowrap>某某省某某县</TD>
<TD colspan=1 class="e-01-td" nowrap>某某省某某县某某镇某某村某某组</TD>
<TD colspan=1 class="e-01-td" nowrap>
<A target='_blank' href="/pzweb/Yct?xm=张某某&gmsfhm=522631199002105132" title="通过某某综合信息系统查询该人的信息" class="prompt_url">查一查</A>
</TD>
</TR>
</tbody>
</TABLE>
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
<TR>
<TD class="e-01-bottom-tbl"></TD>
</TR>
</TABLE>
</span>
<script type="text/javascript">
var CzrkBaseVoSt = new SelectableTableRows(document.getElementById("CzrkBaseVoSt"), true);
CzrkBaseVoSt.onchange = function () {
var text = CzrkBaseVoSt.getSelectedIndexes().toString();
//window.status = text;
};
CzrkBaseVoSt.setItemSelected(CzrkBaseVoSt.getItem(1),true);
</script>
<script LANGUAGE="javascript">
function query(){
document.SysSfhyform1.submit() ;
}
function queryButton(){
document.SysSfhyform1.formAction.value="1" ;
query() ;
}
function scroll(nPageNumber){
document.SysSfhyform1.formAction.value="2" ;
document.SysSfhyform1.elements["pageStartNo"].value=nPageNumber ;
query() ;
}
function submit(){
if (validateSysSfhyForm(SysSfhyform)){
SysSfhyform1.submit();
}
}
function listSfhyBySfzh(sfzh){
window.location.href = "SysSfhy.do?formAction=1&czrkgmsfhm="+sfzh;
}
function listSfhyByXmSfzh(xm,sfzh){
window.location.href = "SysSfhy.do?formAction=1&czrkxm="+xm+"&czrkgmsfhm="+sfzh;
}
</script>
<script LANGUAGE="javascript">
gsWebContext = "/pzweb";
</script>
</form>
<script LANGUAGE="javascript">
var szCurrentPageURL="/pzweb/SysSfhy.do" ;
var szQueryString="null";
gf_setFocus();
nCurrentRow=null ;
if (nCurrentRow==null){
nCurrentRow=0;
}
</script>
</td>
</tr>
<tr valign="bottom" height="30" align="left">
<tdalign="left" valign="top">
<input type=button onclick="javascript:jcback();" Class="ButtonSave" value='返 回'>
<script LANGUAGE="javascript">
function jcback(){
try{
if(document.referrer == ''){
window.opener=null;
window.open('','_self','');
window.close();
}else{
window.history.back();
//window.history.go(0);
}
}catch(E){}
}
</script>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
这是源文件中,想提取下面的信息。
111111111111111111
张某某
男
侗族
某某省某某县
某某省某某县某某镇某某村某某组
正则\<TD.*\>(.*?)(?)(?=\<\/TD>)提取到身份核验查询条件
身份核验查询结果
序号
公民身份号码
姓名
性别
出生日期
民族
所属省市县区(户籍地)
住址详址
操作
男
1990-02-10
侗族
某某省某某县
某某省某某县某某镇某某村某某组
[完毕]麻烦大家帮忙给个正确的正则。还有想问下,可否先读取姓名张某某把姓名张某某复制到指定的控件edit1中,然后读取性别男把性别男复制到指定的控件edit2中。谢谢。 '(?s)<tbody>.*?nowrap>\s+(.*?)\v.*?nowrap>\s+(.*?)\v.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<' 用这段正则提取到我想要的了(?s)<tbody>.*?nowrap>\s+(.*?)\v.*?nowrap>\s+(.*?)\v.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<麻烦您能否将提取到的信息逐个复制到我编辑框控件edit1,编辑框控件edit2。。。中呢。 本帖最后由 xiezhang6263 于 2011-4-29 21:05 编辑
回复 2# easefull
用这段正则提取到我想要的了(?s)<tbody>.*?nowrap>\s+(.*?)\v.*?nowrap>\s+(.*?)\v.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<.*?nowrap>(.*?)<
麻烦您能否将提取到的信息身份证号码,姓名。。。逐个复制到我编辑框控件edit1,编辑框控件edit2。。。中呢。 自己ControlSentText过去就可以了 提取内容的代码放在建立GUI之前,就可以把数组元素放入指定的控件文本上去了
如果是先建立GUI后修改文本的话就要用到 _GUICtrlStatusBar_SetText 本帖最后由 xiezhang6263 于 2011-4-30 02:05 编辑
回复 6# love5173
我想要的是提取身份证号码,将身份证号码发送到另一个A软件类别名是edit2的编辑框里,然后将性别发送到A软件类别名是edit4的编辑框里,然后将民族发送到A软件类别名是edit7的编辑框里。。。。以此类推把所有正则提取的信息发送到指定的A软件编辑框里。A软件编辑框类别名所有的都是不同的。 正则看得头晕。。。。。 正则看得头晕。。。。。 表示看不到的说。。。。。。。 现在也在找这类的正则,只能边看例子边学,如果学会还是非常实用的。
页:
[1]