一个可能并没有什么卵用的、用 Python 正则查找文本的服务

2021-05-30 14:28:08 +08:00
 whatacold

服务在 https://texttoolkit.com/re.findall ,接下来说说废话。

场景 1

我工作日常需要用各种内部管理系统,查看监控、日志、按机器 IP 过滤列表等等 ,经常需要人肉从界面 A 抠出来一堆 IP 列表到页面 B 操作,一两个 IP 都好说, 上了 5 个以上的时候就会把自己搞得很烦躁,感觉自己就是个机器。

也尝试过一些批量的办法:

  1. 对于 table 型的数据,从浏览器复制粘贴到 excel 中,再把对应列提取出来
  2. 用 shell 包装一下 grep/sed/awk 来完成

可行是可行,但抵挡不住内部系统各种 UI 不统一的问题,比如多 IP 分隔符,有的时候格式是 IP1|IP2 , 有的时候又是 IP1,IP2 ,使得上面的方法都不太灵活,每次用的时候都需要稍微定制一番, 每个工具的正则语法可能还会有一点点差异。

于是我就想,是否有别的更好的方法呢?有天想到可以利用正则来很好的完成这个任务, 而且正则还有一个 bonus,那就是对于数据没有“格式”要求,不像 awk 那样针对特定的列, 只要满足 pattern 即可;另外对于 join 的符号,也可以在界面上很方便地更改。

场景 2

举一个开发例子,出于某种原因,你现在需要提取 protobuf 定义的所有字段名字,那也可以用这个服务来完成。 比如定义如下:

   message Person {
     required string Name = 1;
     required int32 Id = 2;
     optional string Email = 3;
   }

那么用正则也很简单,用 (\w+) = 即可把它们都抓出来。

场景 3

某天你上网看到一篇好文章,里面包含了大量精美的图片,你想把图片 url 都找出来,然后用 wget 下载下来, 在本地保存一份,这个服务也可以帮一点忙。

  1. 右键查看网页源码,粘贴到文本框中
  2. 写一个提取 img src 的正则: img.*?src="([^"]+)"
1478 次点击
所在节点    分享创造
3 条回复
whatacold
2021-05-30 14:42:28 +08:00
v2ex 上传头像功能是挂掉了吗?想换下头像,试了几次都不行:(
hxsf
2021-05-30 14:53:09 +08:00
场景 1 建议试试自己写个 油猴脚本,直接 js 取 dom 会更加方便,给页面直接加个按钮,点击之后直接复制到剪切板。
whatacold
2021-05-30 15:34:14 +08:00
@hxsf 嗯嗯,确实也是一种方法,感谢建议。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/780141

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX