在 PHP 或 jQuery 中将文本解析为数组
<?php
$list = "<tr>
<td>1.</td>
<td>aaa</td>
<td>234234</td>
<td>1.</td>
<td>bbb</td>
<td>23423423</td>
</tr>
<tr>
<td>2.</td>
<td>ccc</td>
<td>5644</td>
<td>2.</td>
<td>ddd</td>
<td>4566456</td>
</tr>
<tr>
<td>3.</td>
<td>eee</td>
<td>456456</td>
<td>3.</td>
<td>fff</td>
<td>456456456</td>
</tr>
"; ?>
CODEPAD: http://codepad.org/JaxTfBF6
我如何获取每个中第二个和第五个 TD 的所有值来自变量 $list 的 TR? 我想要接收数组。我可以使用 PHP 或 jQuery。
$all = array('aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff');
<?php
$list = "<tr>
<td>1.</td>
<td>aaa</td>
<td>234234</td>
<td>1.</td>
<td>bbb</td>
<td>23423423</td>
</tr>
<tr>
<td>2.</td>
<td>ccc</td>
<td>5644</td>
<td>2.</td>
<td>ddd</td>
<td>4566456</td>
</tr>
<tr>
<td>3.</td>
<td>eee</td>
<td>456456</td>
<td>3.</td>
<td>fff</td>
<td>456456456</td>
</tr>
"; ?>
CODEPAD: http://codepad.org/JaxTfBF6
How can i get all values from second and the fifth TD in each TR from variable $list?
i would like receive array. I can use PHP or jQuery.
$all = array('aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff');
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
如果使用 jQuery,这将非常容易。
您可以从字符串加载 DOM 对象:
This would be pretty easy with jQuery.
You could load DOM objects from the string:
使用 PHP,您可以使用 DOM 或 simpleXML 库来解析 HTML 或正则表达式。
With PHP you can use DOM or simpleXML libraries to parse HTML or regular expressions.
您可以使用 jQuery:
它基本上检索每个 td 的第五个元素,然后对每个元素应用一个函数,用其文本内容替换元素本身。
You could use jQuery:
It basically retrieves the fifth element of every
td
and then applied a function to each element, which replace the element itself with its text content.看起来好像你的服务器上已经有了数据,所以没有理由将其发送到客户端,使用 jQuery 解析它,然后将其发送回 PHP。
给定 PHP 中的输入数组
$list
,您可以执行以下操作。首先匹配所有
元素,
然后过滤掉所有错误的行。
最后删除数组中的旧键并返回。
上面应该返回
It seems as if you already have the data on your server, so there is no reason to send it to the client, use jQuery to parse it, and then send it back to PHP.
Given your input array
$list
in PHP, you can do the following.First match all
<td>
elementsThen filter out all the wrong rows.
Finally remove the old keys in the array and return it.
The above should return
与其他答案类似,但完整的工作代码......
Similar to the other answers, but complete working code...