做网站难吗 挣钱吗,企业手机网站建设资讯,广西网络,百度识图软件正则表达式库的简单介绍
正则表达式易于使用#xff0c;功能强大#xff0c;可用于复杂的搜索和替换以及基于模板的文本检查。这对于输入形式的用户输入验证特别有用-验证电子邮件地址等。您还可以从网页或文档中提取电话号码#xff0c;邮政编码等#xff0c;在日志文件中…正则表达式库的简单介绍
正则表达式易于使用功能强大可用于复杂的搜索和替换以及基于模板的文本检查。这对于输入形式的用户输入验证特别有用-验证电子邮件地址等。您还可以从网页或文档中提取电话号码邮政编码等在日志文件中搜索复杂的模式然后您就可以想象得到。无需重新编译程序即可更改规则模板。
分析猫眼电影数据 https://www.maoyan.com/board/4?offset0 有10部电影 https://www.maoyan.com/board/4?offset10 又有10部电影以此类图10 分析其中一部电影的网页源码:
ddi classboard-index board-index-22/ia href/films/1297 title肖申克的救赎 classimage-link data-actboarditem-click data-val{movieId:1297}img src//s3.meituan.net/static-prod01/com.sankuai.movie.fe.mywww-files/image/loading_2.e3d934bf.png alt classposter-default /img data-srchttps://p0.pipi.cn/mmdb/fb7386020fa51b0fafcf3e2e3a0bbe694d17d.jpg?imageView2/1/w/160/h/220 alt肖申克的救赎 classboard-img //adiv classboard-item-maindiv classboard-item-contentdiv classmovie-item-infop classnamea href/films/1297 title肖申克的救赎 data-actboarditem-click data-val{movieId:1297}肖申克的救赎/a/pp classstar主演蒂姆·罗宾斯,摩根·弗里曼,鲍勃·冈顿/p
p classreleasetime上映时间1994-09-10(加拿大)/p /divdiv classmovie-item-number score-num
p classscorei classinteger9./ii classfraction5/i/p /div/div/div
/dd构造正则表达式 dd.*?board-index.*?(.*?)/i.*?data-src(.*?).*?name.*?a.*?(.*?)/a.*?star.*?(.*?)/p.*?releasetime.*?(.*?)/p.*?integer.*?(.*?)/i.*?fraction.*?(.*?)/i.*?/dd
提取数据保存
function ExtractMovies(const AInputString: string; ATemplate: string): string;
constMovieRE dd.*?board-index.*?(.*?)/i.*?data-src(.*?).*?name.*?a.*?(.*?)/a.*?star.*?(.*?)/p.*?releasetime.*?(.*?)/p.*?integer.*?(.*?)/i.*?fraction.*?(.*?)/i.*?/dd;
varr : TRegExpr;OutputString: string;
beginResult : ;r : TRegExpr.Create;tryr.Expression : MovieRE;if r.Exec(AInputString) thenrepeatResult : Result Format({image:%1s,actor:%2sscore:%3s,index:%4s,tit1e:%5s,time:%6s},[r.Match[2], Trim(r.Match[4]), r.Match[6] r.Match[7], Trim(r.Match[1]), r.Match[3], r.Match[5]]) sLineBreak;until not r.ExecNext;finallyr.Free;end;
end;返回数据