1

我正在尝试使用 PHP 匹配格式为 \domain\username 的字符串,但我无法让它返回数组中的匹配片段。

$username = "\\domain\jason";    
$login = preg_match_all("/^\\\\[a-z0-9\-]+\\[a-z0-9\-]+$/i", $username, $found);
    var_dump($found);
    array
      0 => 
        array
          empty

我用在线测试仪测试了我的常规表达式,它与字符串完美匹配。

http://gskinner.com/RegExr/

4

2 回答 2

1

您可以使用以下代码:

$username = "\\domain\jason";
if (preg_match_all('~\\\\?(\w+)~', $username, $arr))
   print_r($arr[1]);

输出:

Array
(
    [0] => domain
    [1] => jason
)
于 2013-03-25T04:07:31.123 回答
1

如果您知道字段由 a 分隔,\请执行以下操作:

$username = '\\domain\jason';

$arr = explode('\\', $username);

echo $arr[1]; // domain
echo $arr[2]; // jason

[演示]

于 2013-03-25T04:15:36.650 回答