我又一次遇到了巨魔的问题。有这样的情况:
<?php
[...]
$string="IchigoKurosaki FirstRandomTroll NatsuDragneel SecondRandomTroll NarutoUzumaki TrollMaster";
//[do some magic here]
//$outputArray = {
[1] => "FirstRandomTroll SecondRandomTroll",
[2] => "TrollMaster"
}
?>我想用preg_match在群里抓巨魔。我有3个组:
(firstRandomTroll), (secondRandomTroll), and (TrollMaster)保存到$output中,格式为
[1] => "first...", [2]=> "second...", and [3]="TrollMaster".是否可以仅使用一个正则表达式将1和2连接到一个值?
发布于 2014-03-13 23:19:52
我编写了一个正则表达式来捕获字符串中的每个巨魔:
$string="IchigoKurosaki FirstRandomTroll NatsuDragneel SecondRandomTroll NarutoUzumaki TrollMaster";
preg_match_all("([a-zA-Z]*Troll[a-zA-Z]*)", $string, $array);
print_r($array);输出:
Array
(
[0] => Array
(
[0] => FirstRandomTroll
[1] => SecondRandomTroll
[2] => TrollMaster
)
)巨魔现在是孤立的(这是更好的,对吧?)
现在,您可以对数组的元素执行操作以对它们进行重组(听起来不是一个好主意,我们正在讨论的是巨魔……)。只要小心这个数组的结构即可。
现在,如果你真的,真的想一次捕获两个巨魔,我认为用一个正则表达式是不可能的。您可以将其重写为具有两个捕获组,但这不会立即在一个字符串中输出两个巨魔……
https://stackoverflow.com/questions/22382807
复制相似问题