0

几年后我又回到了 Lisp,当时 Common Lisp 只是计算机科学家眼中的一闪而过!我对 Lisp 的体验主要是列表(例如,使用 setq、cdr 和 cadr 函数)。经过一番摸索,我设法从键盘上读取了一行文本,使用“read-line”,但后来发现它是一个字符串。Sooooo,是否有一个函数可以将(比如说)“THE CAT SAT ON THE MAT”转换为(THE CAT SAT ON THE MAT)?

任何帮助将不胜感激!

西蒙苏格兰

4

3 回答 3

1

如果我没记错的话,(string string1 string2)指的是 LISP 中的字符串数组。在这种情况下,您想使用explode()功能:

$explodedArray = explode(" ", $yourLongString);
var_dump($explodedArray);
foreach($explodedArray as $strEach){
    echo $strEach . "\n";
}
于 2012-10-07T10:40:38.433 回答
1

使用它将字符串转换为数组

$array = explode(" ",$inputStr);
于 2012-10-07T10:41:01.637 回答
0

好吧,如果我理解正确并且您希望在 PHP 中从输入字符串THE CAT SAT ON THE MAT获取输出字符串(THE CAT SAT ON THE MAT),那么这应该没问题:

<?php
    $inputStr = 'THE CAT SAT ON THE MAT';
    $outputStr = '('. $inputStr .')';
    echo $outputStr;
?>

编辑: 现在,当我看到 (str str) 是一个列表时,这应该可以工作:

<?php
    $outputArray = explode(" ",$inputStr); 
?>

$outputArray 变量的 var_dump 将是:

array(6) {
    [0]=>
        string(3) "THE"
    [1]=>
        string(3) "CAT"
    [2]=>
        string(3) "SAT"
    [3]=>
        string(2) "ON"
    [4]=>
        string(3) "THE"
    [5]=>
        string(3) "MAT"
}
于 2012-10-07T10:38:12.480 回答