正则表达式怎么写及怎么调试

作者:白雪 | 创建时间: 2023-07-29
在工作中经常需要些很长的正则表达式,怎样做到边写边调试正则表达式是否正确,也给无法匹配成功时快速定位到问题所在,下面详细介绍下正则表达式怎么写及怎么调试。以/classic/send.php?ts=1407912080686 和/class...
正则表达式怎么写及怎么调试

操作方法

先分析下这两条数据的共同点,数据的格式一样/classic/send().php?ts=数字,不同点就是第二条数据send后面多了mail这个单词,ts后面的数字不一样。

先介绍下正则表达式简单需要用到的:(1) .* 匹配除换行符之外的任意字符  (2)*零次或者多次匹配前面的字符或者子表达式  (3)|表示或的关系 [0-9]*取0-9的数字钟的零个或多个 (4)()去里面的值。

下载个正则表达式的调试工具regdebug,使用很简单,直接双击regdebug的windows批处理文件,就自动弹出两个框,一个为java运行的框,一个为调试正则表达式的框。

待解析的数据,直接把上面需要分析的两条数据中的一条复制到框中;正则表达式,填写自己写好的表达式;在正则表达式中使用(),为括号内的值,点击调试,可以在解析结果中看见是否匹配正确。

现在写正则表达。(/classic/send.*)其中.*代表后面的任意字符,主要测试下前面的是否匹配,点击调试,看看结果中是否把整个数据都表示出来。

send后面一个有mail一个为空,可以使用一个或的关系,继续写正则表达式(/classic/send(mail|()).*),在调试一下。

?是特殊字符,使用\?进行匹配,(/classic/send(mail|()).php\?.*),调试一下。

最后匹配ts后面的数字。使用[0-9]*进行匹配,调试一下。

在使用另一条数据调试下写好的正则表达式,是否正确。

点击展开全文

更多推荐