Home  >  Q&A  >  body text

php - How to take out multiple src paths in the string below

The 20170626/1498445461112119.png (date/file name) path after taking out image/ is also ok. I can manually spell the previous one. . .

I'm sorry that I can't adopt more than one. I logged in to segmentfault after taking them out. Thank you very much.

With regular rules: $preg='//d/d.[jpg|jpeg|png|bmp|gif]*/i';

黄舟黄舟2646 days ago922

reply all(5)I'll reply

  • PHP中文网

    PHP中文网2017-06-27 09:20:07

    <?php
    $str = '<p>图1<img src="/public/upload/ueditor/image/20170626/1234567890.png" title="1234567890.png" alt="QQ图片1234567890.png"></p><p>图1<img src="/public/upload/ueditor/image/20170626/0987654321.png" title="0987654321.png" alt="QQ图片0987654321.png"></p>';
    
    if (preg_match_all('/src="(.+?)"/', $str, $matches)) {
        print_r($matches);
    } else {
        echo '没有匹配';
    }

    Output:

    (
        [0] => Array
            (
                [0] => src="/public/upload/ueditor/image/20170626/1234567890.png"
                [1] => src="/public/upload/ueditor/image/20170626/0987654321.png"
            )
    
        [1] => Array
            (
                [0] => /public/upload/ueditor/image/20170626/1234567890.png
                [1] => /public/upload/ueditor/image/20170626/0987654321.png
            )
    
    )

    If you are interested, please watch my introductory lecture on regular expressions: Learn to use regular expressions in one hour

    reply
    0
  • 伊谢尔伦

    伊谢尔伦2017-06-27 09:20:07

    Regular expressions are more convenient

    reply
    0
  • 高洛峰

    高洛峰2017-06-27 09:20:07

    Use regular matching, and then use ()to extract the piece as a subset

    reply
    0
  • 伊谢尔伦

    伊谢尔伦2017-06-27 09:20:07

    $str = "<img src='/public/upload/ueditor/image/20170601/32462374327846.png'><img src='/public/upload/ueditor/image/201611111/989384328.jpeg'><img src='/public/upload/ueditor/image/20160808/7874873284.gif'>";
    
    preg_match_all("/image\/(\d+\/\w+\.(png|jpeg|gif|jpg))/", $str, $matches);

    reply
    0
  • 学习ing

    学习ing2017-06-27 09:20:07

    <?php
    define('CLI_SCRIPT', true);
    
    $tt = '<p><img class="icon" alt="141220154.zip" title="141220154.zip" src="http://11111/theme/image.php/ gourmet/core/1491882323/f/archive" /> </p><p><img class="icon" alt="141220154.zip" title="141220154.zip" src="http://3333/theme/image.php/gourmet/core/         1491882323/f/archive" /></p>';
    
    preg_match_all('/<img [^>]*src=\"(.+?)\"/', $tt, $matches);                                                                                                                 
    var_dump($matches);    // 需要的字符串在$matches[1]中,具体信息可以打印了看

    Reference link: http://php.net/manual/zh/func...

    reply
    0
  • Cancelreply