作者:只属于我一个人的秘密 | 来源:互联网 | 2023-10-10 18:52
我想在不同的字符上分割一个字符串,我想知道’splitter’是什么.
字符串可以是例如:
"address=test"
"number>20"
"age<=55"
在这些情况下,我想获取数组中的名称,分隔符和值.
array[0]='address';
array[1]='=';
array[2]='test';
分隔符是=,==,!=,<,>,> =,<=.
有人能告诉我这个吗?
解决方法:
$strings = array("address=test","number>20","age<=55");
foreach($strings as $s)
{
preg_match('/([^=!<>]+)(=|==|!=|<|>|>=|<=)([^=!<>]+)/', $s, $matches);
echo 'Left: ',$matches[1],"\n";
echo 'Seperator: ',$matches[2],"\n";
echo 'Right: ',$matches[3],"\n\n";
}
输出:
Left: address
Seperator: =
Right: test
Left: number
Seperator: >
Right: 20
Left: age
Seperator: <=
Right: 55
编辑:此方法使用[^ =!<>]使该方法优先完全失败而不是给出意外结果.意味着foo = bar<3将无法识别.这当然可以改变以满足您的需求:-).