【问题标题】:How to return the numbers back to the string as reversed如何将数字反向返回到字符串
【发布时间】:2017-10-01 14:38:55
【问题描述】:

我正在练习,我得到了一个程序如何工作的例子

Entry: "Dlasdf234dkl sdfkl8886adaf15adfjk7 asdflkj376661a s445s198"

Output: "Dlasdf432dkl sdfkl6888adaf51adfjk7 asdflkj166673a s544s891"

无论它们在哪里,我都设法得到了所有的数字,我通过爆炸和内爆来做到这一点。我将数字作为字符串,因为我是在循环中完成的,所以我被卡住了,无法将数字取回原始字符串。

当我尝试将它们放回字符串时,我得到了这个混乱:

Array
(
[0] => Array
    (
        [a] => Dlasdf432dkl sdfkl432adaf432adfjk432 asdflkj432a s432s432
        [sub] => Пошаљи
    )

[1] => Array
    (
        [a] => Dlasdf6888dkl sdfkl6888adaf6888adfjk6888 asdflkj6888a s6888s6888
        [sub] => Пошаљи
    )

[2] => Array
    (
        [a] => Dlasdf51dkl sdfkl51adaf51adfjk51 asdflkj51a s51s51
        [sub] => Пошаљи
    )

[3] => Array
    (
        [a] => Dlasdf7dkl sdfkl7adaf7adfjk7 asdflkj7a s7s7
        [sub] => Пошаљи
    )

[4] => Array
    (
        [a] => Dlasdf166673dkl sdfkl166673adaf166673adfjk166673 asdflkj166673a s166673s166673
        [sub] => Пошаљи
    )

[5] => Array
    (
        [a] => Dlasdf544dkl sdfkl544adaf544adfjk544 asdflkj544a s544s544
        [sub] => Пошаљи
    )

[6] => Array
    (
        [a] => Dlasdf891dkl sdfkl891adaf891adfjk891 asdflkj891a s891s891
        [sub] => Пошаљи
    )
)

【问题讨论】:

    标签: php arrays string loops


    【解决方案1】:

    您需要使用正则表达式来解析数字并替换它们:

    <?php
    
    $str = 'Dlasdf234dkl sdfkl8886adaf15adfjk7 asdflkj376661a s445s198';
    
    
    echo preg_replace_callback('~([0-9]{2,})~', function($matches) { return strrev($matches[1]); }, $str);
    // Dlasdf432dkl sdfkl6888adaf51adfjk7 asdflkj166673a s544s891
    
    ?>
    

    【讨论】:

    • Tnx 伙计,你的帮助是商品的祝福,天哪,我不敢相信它是那么容易
    猜你喜欢
    • 2022-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-14
    相关资源
    最近更新 更多