给定一个字符串和一个关键字列表,要求将字符串按照关键字拆分为一个数组。
问题:
要将以下字符串按照以下关键字拆分为数组:
字符串:你关注的杨幂有10个未看
关键字:[“杨幂”, 10]
预期结果:[“你关注的”, “杨幂”, “有”, 10, “个未看”]
解决方案:
我们可以使用正则表达式来完成这个拆分任务。正则表达式可以帮助我们匹配和提取字符串中的特定模式。
以下是一个使用 php 正则表达式的解决方案:
$str = "你关注的杨幂有10个未看"; print_r (preg_split("/(杨幂|10)/", $str, -1, PREG_SPLIT_DELIM_CAPTURE));
正则表达式 /(杨幂|10)/ 表示匹配字符串中出现的关键字 “杨幂” 或 “10”。preg_split_delim_capture 选项指定将匹配的关键字本身也包含在数组中。
因此,最终得到的输出数组将包含:[“你关注的”, “杨幂”, “有”, 10, “个未看”]