![]() | 1 retanoj 2023-08-07 09:10:13 +08:00 html 不建议用正则扣 |
2 73P2OdTjK6t29nk1 2023-08-07 09:14:00 +08:00 这种事交给 chatgpt 不是第一选择吗 |
3 zpj520wzm 2023-08-07 09:16:15 +08:00 td>(.+?)< |
![]() | 4 8355 2023-08-07 09:16:19 +08:00 正则是效率最低的方式,标准 html 解析是最好的方案 |
![]() | 5 Great233 2023-08-07 09:16:21 +08:00 td>.*?< 这样? |
![]() | 7 chnwillliu 2023-08-07 09:16:49 +08:00 via Android <td>(.+?)(?=<) 用断言,否则后面的尖括号会被吃了 |
8 dayeye2006199 2023-08-07 09:16:52 +08:00 via Android 建议做个树结构,然后框个迭代的条件过一遍就行 |
![]() | 9 cloudfox 2023-08-07 09:16:54 +08:00 (?<=<td>)(.*?)(?=<td>) |
![]() | 10 shiyuu 2023-08-07 09:22:53 +08:00 chatgpt 帮你完成 |
![]() | 11 newaccount 2023-08-07 09:23:19 +08:00 <td>([^<]*)< |
12 p1956 OP @chnwillliu 这个可以,谢谢 |
![]() | 13 newaccount 2023-08-07 09:25:07 +08:00 @newaccount 忽略我,原始数据不是标准 td 嵌套 |
![]() | 14 SuujonH 2023-08-07 09:25:18 +08:00 善用 chatgpt ,不行就多问问 <td>([^<]*) |
15 Seanfuck 2023-08-07 09:31:54 +08:00 3 楼 5 楼的都可以,奇怪了不能用<td>开头的 |
![]() | 16 davin 2023-08-07 09:45:49 +08:00 你这也不是标准的 HTML 吧,不遵循嵌套规则,结束标签呢? |
17 zpj520wzm 2023-08-07 10:19:45 +08:00 @Seanfuck 楼主一开始的正则,后面会吞掉一个<,就匹配不了<td>开头了,间隔,所以只能匹配一半,就是 15 个。做法要么这样写,要么就是 chnwillliu 说的后向断言引用 |
![]() | 18 herozzm 2023-08-07 10:20:54 +08:00 测试正则请用: https://regex101.com/ |
![]() | 19 loveDiu4ever 2023-08-07 10:57:32 +08:00 td 里面套 td 真有人愿意给他写正则啊 |
20 kaedeair 2023-08-07 17:21:35 +08:00 td>(.+?)< 为啥会漏最后一个是因为最后一个"<"把最后<td>的"<"吃了 |
![]() | 21 mikewang 2023-08-07 22:32:49 +08:00 不要使用正则表达式匹配 HTML: https://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags HTML 不是正则文法语言,因此该语言不能被正则表达式“正确地”解析。 |