如何编写简单regex提取网页区块数字 实用regex builder推荐
正则提取方案
针对你提供的固定结构HTML片段,直接锚定「Players online」的上下文特征写匹配规则即可,避免匹配到页面其他无关数字:
Players online:</div>\s*<div class="stat-server-body"><b>(\d+)</b>
匹配后取第一个捕获组的内容,就是你要的在线玩家数,示例片段里匹配结果为2321。
规则里的\s*用来匹配两个标签之间的换行、缩进空格,适配网页源码常见的排版格式,不会因为标签换行、多打了空格就匹配失败。
注意:正则不适合解析结构复杂、变动频繁的HTML。如果是正式采集场景,优先用DOM解析器通过class选择器定位元素(比如直接选取
.stat-server-body b标签的文本内容),稳定性远高于硬写的正则规则。上面给出的正则仅适合当前固定片段的快速提取需求。
实用正则构建工具推荐
- VS Code 内置搜索面板:开启正则模式后,可以直接在你粘贴的网页源码里实时查看匹配高亮,边写规则边调试,不用切换页面,适合快速验证简单规则
- 可视化正则调试工具:支持逐段拆解正则语法、实时显示匹配命中位置、自动生成多编程语言(Python/JavaScript/Java等)的可直接运行的正则代码,写复杂规则时可以直观看到每段语法的作用,降低出错概率
- 正则边界测试工具:支持批量导入多组测试样例,可以快速验证规则在标签多空格、属性顺序调整、文本换行等边界场景下的匹配效果,提前排查误匹配、漏匹配问题
内容的提问来源于stack exchange,提问作者Bonjour code
相关产品推荐
相关产品推荐

