qq_41265012 2021-11-07 23:39 采纳率: 70%
浏览 59
已结题

正则批量提取内容中的指定关键字,怎么写?


$s='<p>内容第一段</p>   <p>内容第二段</p>   <p>内容第X段</p>  <p>作者:杨XX,女,汉族,XXX内容XXXX</p>  <p>作者:王XX,男,汉族,XXX内容XXXX</p> <p>内容第X段</p> <p>内容第X段</p> <p>内容第X段</p> <p>审核员:陈XX,XXX内容XXXX</p> <p>内容第X段</p>'

我需要提取出  作者:和  审核员: 的名字

          preg_match_all ('/<p>(作者|审核员):(.*),/U', $s, $pat_array);
          print_r($pat_array);

Array ( [0] =>
作者:杨XX, [1] =>
作者:王XX, [2] =>
审核员:陈XX, )

但我不需要 数组里带 作者:审核员:,逗号。

应该怎么写,或者怎么去掉

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2021-11-08 09:47
    关注

    限定获取4个汉字后面接逗号的组合,公司名字一般大于4个字符

    <meta charset="utf-8">
    <?php
    $s=<<<str
    <p>内容第一段</p>
    <p>内容第二段</p>
    <p>内容第X段</p>
    <p>作者:杨XX,女,汉族,XXX内容XXXX</p>
    <p>作者:王XX,男,汉族,XXX内容XXXX</p>
    <p>作者:XXXXXX有限公司,公司地址:XXX内容XXXX</p>
    <p>内容第X段</p>
    <p>内容第X段</p>
    <p>内容第X段</p>
    <p>审核员:陈XX,XXX内容XXXX</p>
    <p>内容第X段</p>'
    str;
    
    preg_match_all ('/(作者|审核员):[^,,]{2,4}(?=[,,])/u', $s, $pat_array);
    print_r($pat_array[0]);
    ?>
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月16日
  • 已采纳回答 11月8日
  • 修改了问题 11月8日
  • 修改了问题 11月7日
  • 展开全部