1

我有一个数据列表(字符串),我想使用正则表达式将其拆分为变量:

公司名称:某公司电话:(123) 456-7890 邮箱:name@domain.com

我想让它:

$company = '某公司', $phone = '(123) 456-7890', $email ='name@domain.com'

我遇到问题的地方是唯一的分隔符是':'和空格。我还没有开始制定正则表达式模式。我尝试使用explode,但那是将下一个项目添加到最后一个项目上。IE;

$pieces = explode(":", $list);
$pieces[0]  // Company Name
$pieces[1] // Some Company Telephone
...
4

1 回答 1

4

您可以尝试使用正则表达式拆分行:

$str = "Company Name: Some Company Telephone: (123) 456-7890 " .
    "Email: name@domain.com";

list(, $company, $telephone, $email) =
    preg_split("/\s*(?:Company Name|Telephone|Email):\s*/", $str);
于 2012-10-15T22:45:34.600 回答