为了账号安全,请及时绑定邮箱和手机立即绑定

可以分词吗?

可以分词吗?

PHP
神不在的星期二 2022-07-16 18:08:35
我想问一下是否可以"Keyboard"在PHP中将一个单词剪切成多个字符串?我希望只要有 / 就切断字符串。例子:String: "Key/boa/rd"现在我希望剪切结果如下所示:String1: "Key"String2: "boa"String3: "rd"
查看完整描述

3 回答

?
ibeautiful

TA贡献1993条经验 获得超6个赞

您可以使用 PHP 的爆炸功能。所以,如果你的字符串是"Key/boa/rd",你会这样做:


explode('/', 'Key/boa/rd');

并得到:


[

     "Key",

     "boa",

     "rd",

]

您的问题尚不清楚,但如果您不想要一个数组(而是想要变量),您可以像这样使用数组解构:


[$firstPart, $secondPart, $thirdPart] = explode('/', 'Key/boa/rd');

但是,如果字符串只有一个/,那么这种方法可能会导致抛出异常。


查看完整回答
反对 回复 2022-07-16
?
红颜莎娜

TA贡献1842条经验 获得超13个赞

Nathaniel 的回答假设您的原始字符串包含 / 字符。您可能只在示例中使用了这些,并且您希望将字符串拆分为等长的子字符串。它的功能是 str_split ,它看起来像:

$substrings = str_split($original, 3);

这会将字符串 $original 拆分为一个字符串数组,每个字符串的长度为 3(如果它不均分,则最后一个除外)。


查看完整回答
反对 回复 2022-07-16
?
隔江千里

TA贡献1906条经验 获得超10个赞

您可以逐个字符地遍历行,检查您的分隔符。


<?php

$str = "Key/boa/rd";

$i = $j = 0;

while(true)

{

    if(isset($str[$i])) {

        $char = $str[$i++];

    } else {

        break;

    }


    if($char === '/') {

        $j++;

    } else {

        if(!isset($result[$j])) {

            $result[$j] = $char;

        } else {

            $result[$j] .= $char;

        }

    }

}

var_export($result);

输出:


array (

    0 => 'Key',

    1 => 'boa',

    2 => 'rd',

  )

然而,explode、preg_split 或 strtok 可能是想要拆分字符串时的 goto Php 函数。


查看完整回答
反对 回复 2022-07-16
  • 3 回答
  • 0 关注
  • 171 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号