交换 2 字元素数组中单词的位置
我们有带有名称的数组:
[
'Robin Hood',
'Little John',
'Maid Marion',
'Friar Tuck',
'Will Scarlet'
]
每个项目中的第一个单词应移至该项目的末尾。
我们应该得到这个:
[
'Hood Robin',
'John Little',
'Marion Maid',
'Tuck Friar',
'Scarlet Will'
]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
哈!太棒了,艾哈迈德!
我正在做类似的事情......然后
我刷新了页面并看到了你的。干净整洁!
Ha! that's great Ahmet!
I was working on something similar... got to
then I refreshed the page and saw yours. Clean and neat!
您不需要执行任何迭代函数调用或过程,只需在输入数组上使用
preg_replace()
,单独捕获单词,然后将它们交换到替换字符串中。代码:(演示)
You don't need to perform any iterated function calls or processes, just use
preg_replace()
on the input array, capture the words individually, then swap them in the replacement string.Code: (Demo)
如果您只需要移动第一个空格之前的部分(在 $limit = 2 rel="nofollow noreferrer">
explode()
仅获取两部分):(演示)
给出:
If you only need to move the part before the first whitespace (setting
$limit = 2
inexplode()
to get two parts only):(Demo)
Gives:
这不是一个特别迷人的解决方案:
Not a particularly glamorous solution:
遍历数组,使用 explode 在 ' '(空格),然后使用 array_shift 剪切并获取第一个元素, array_push 到最后,使用' '(空格)再次内爆整个事情。
walk through you array, use explode to split the entry at ' '(space), then use array_shift to cut of and get the first element, array_push it to the end and implode the whole thing again with ' '(space).