首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP/MySQL帮助解析/提取分隔符和ID

问PHP/MySQL帮助解析/提取分隔符和ID
EN

Stack Overflow用户
提问于 2014-04-16 20:55:32
回答 3查看 94关注 0票数 0

我已经将数据从SharePoint导入到MySQL数据库中,我需要从字符串中提取和格式化一些数据,同时忽略分隔符之间的数值SharePoint ID。包含多个条目作为字符串的示例Name字段:

代码语言:javascript
复制
Smith, Bob;#5800;#Jones, Mark;#6067;#Brown, Alex

我希望输出如下所示:

代码语言:javascript
复制
Smith, Bob</br>
Jones, Mark</br>
Brown, Alex

我的当前查询工作并返回结果。当前查询:

代码语言:javascript
复制
<?php 
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
if (mysql_num_rows($sql_result)>0) {
while ($row = mysql_fetch_assoc($sql_result)) {
?>
<tr>
  <td><?php echo $row["Project Title"]; ?></td>
  <td><?php echo $row["Project Description"]; ?></td>
  <td><?php echo $row["Project Sponsor(s)"]; ?></td>
</tr>
<?php } ?>

包含此特定字符串的字段是Project赞助商。

如何使用这些带有分隔符的随机ID进行解析?

帮助?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-04-16 21:05:40

只需用<br />替换

代码语言:javascript
复制
echo preg_replace('/;#?[^;]+;#?/', '<br />', $row['Project Sponsor(s)']);
票数 1
EN

Stack Overflow用户

发布于 2014-04-16 21:01:52

代码语言:javascript
复制
$ php -r 'print_r(explode(";#", "Smith, Bob;#5800;#Jones, Mark;#6067;#Brown, Alex"));'
Array
(
    [0] => Smith, Bob
    [1] => 5800
    [2] => Jones, Mark
    [3] => 6067
    [4] => Brown, Alex
)

你想要0,2和4。

票数 0
EN

Stack Overflow用户

发布于 2014-04-16 21:07:04

试试斯普利特(

这个正则表达式可能有效,或者可能需要更多的调整:

代码语言:javascript
复制
$sponsors = preg_split("/;#[0-9]+;#/", $row["Project Sponsor(s)"]);

现在你可以迭代列表,格式化名字等等.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23119941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档