首页 > 应用开发 > IT综合 > 关于TPerlRegEx类使用上的一些经验
在delphi里可以使用类TPerlRegEx来实现对正则表达式的调用。
TPerlRegEx中有几个函数和属性我们在开发中会经常用到,如Subject、RegEx、Match、AgainMatch、SubExpressions、Replacement和ReplaceAll等等。
由属性或函数名我们不难推测出他们的功能,这里不详细介绍属性和函数的功能,做几个实例供大家参考。
查找指定格式的字符串
我们要在字符串中查找类似如下格式的所有字符串,
dse_sessionId=6Ee0Y05AkhLUeO4R8nenMvM,做过web开发的朋友可以轻易的看出这是html中会话ID,下面我举例说明如何找出网页中满足如上格式的字符串,
Const
CS_DEST_1 = 'dse_sessionId=w*';在w前有反斜扛
var
vPerlReg: TPerlRegEx;
begin
vPerlReg := TPerlRegEx.Create(nil);
vPerlReg.Subject := vList.Text; //将目标网而保存在TStringList中
vPerlReg.RegEx := CS_DEST_1; //这里是正则表达式
vPerlReg.Match; // 开始在网页中查找,成功找到匹配的字符串时Match函数会返回true
vPerlReg.SubExpressions[0];// 这里保存了所查找到的字符串。
//注意上面的方法只找到满足正则表达式中的一个字符串,而不是所有的,如果想找到所有满足正则表达式的字符串,需要使用循环来完成,此时需要配合使用函数AgainMatch来完成循环。
// 还有一点需要注意,在目标里如果包含有换行符,如#$D#$A,它会影响正则表达式查找指定格式的字符串,我的经验是在具体执行查找前将这些多余的字符从目标中去掉。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7416120/viewspace-1043680/ ,如需转载,请注明出处,否则将追究法律责任。