首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在PHP中使用多个分隔符分割preg_match

在PHP中使用多个分隔符分割preg_match
EN

Stack Overflow用户
提问于 2015-01-20 19:09:24
回答 1查看 148关注 0票数 0

我有这样的字符串数据:

代码语言:javascript
复制
$productList="
Saluran Dua(Bothway)-(TAN007);
Speedy Password-(INET PASS);
Memo-(T-Memo);
7-pib r-10/10-(AM);
FBI (R/N/M)-(Rr);
";

我如何拆分它们,所以结果是:

代码语言:javascript
复制
Array1(
[0]=>Saluran Dua(Bothway)
[1]=>Speedy Password
[2]=>Memo
[3]=>7-pib r-10/10
[4]=>FBI (R/N/M)
);

Array2(
[0]=>TAN007
[1]=>INET PASS
[2]=>T-Memo
[3]=>AM
[4]=>Rr
);

我尝试过preg_match_all,这是针对array1的:

代码语言:javascript
复制
$separator = '/\-\(([A-z ]*)\)/';
preg_match_all($separator, $productList, $match);
$value=$match[1];

这是针对array2的:

代码语言:javascript
复制
$separator2 = '/\;([A-z ]*)\-/';
preg_match_all($separator2, $productList, $desc);
$desc=$desc[1]; 

结果显示,它们中的一些是正确的,另一些则消失了。我认为preg_match_all是有问题的。我希望你能给我一个解决方案。

EN

回答 1

Stack Overflow用户

发布于 2015-01-20 19:14:32

我建议这样做:

代码语言:javascript
复制
preg_match_all('(^(.*)-\((.*)\);$)m',$productList,$matches);
list(,$value,$desc) = $matches;

Live demo

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28043843

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档