代码之家  ›  专栏  ›  技术社区  ›  WebSon

三句话后加一次,然后每三句话后加一次

  •  1
  • WebSon  · 技术社区  · 7 年前

    <span id='colorme'></span> 在前5个句子后标记一次,然后我需要插入 <p...></p> 每5句话后加一个标签,直到课文结束。但如果全文少于5句话,脚本必须什么也不做。

    没有虚假的谦虚,我们声明我们拥有尽可能最好的员工。这不是闹剧、小说或是某人的恶作剧。不,不-这是最真诚的事实。我们所有的员工都非常热情、微笑、礼貌、整洁、胜任工作。多亏了这一点,我们的桑拿多年来一直在成功地工作,给所有的客户带来了快乐,无论是永久的还是新的。来吧,我们很高兴见到你。关于你,艾琳娜。

    我需要:

    <span id='colorme'></span> <p style='color:red'>www.example.com</p> 关于你,艾琳娜。

    <span> 在每三句话之后,但我只需要一次,我甚至不知道我该做什么

    <?php
    $long_text = 'long long text';
    $str = $long_text;
    $arr = explode(".", $str);
    $new_str = "";
    $j = 1;
    foreach($arr as $arr_el) {
        $new_str .= $arr_el.".";
        if($j % 3 == 0) {
            $new_str .= "<span id=colorme></span>";
        };
        $j++;
    }
    
    echo $new_str;?>
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   Death-is-the-real-truth    7 年前

    更改如下:-

    <?php
        $long_text = 'long long text';
        $str = $long_text;
        $arr = explode(".", $str);
        $new_str = "";
        $j = 1;
        foreach($arr as $arr_el) {
            $new_str .= $arr_el.".";
            if($j == 3) { // add span after first 3 sentences
                $new_str .= "<span id=colorme></span>";
            }else{
               if($j %3 == 0) { // now after each 3rd sentence add paragraph
                  $new_str .= "<p class=colorme></p>";
               }
            }
            $j++;
        }
        echo $new_str;
    ?>
    

    <p></p> 会重复多次所以我换了 id class 身份证件 不正确。