用于解析“abc.q = dfd”字符串的正则表达式

时间:2012-06-19 07:13:10

标签: php

我的字符串为abvd.qweqw.sdfs.a=aqwrwewrwerrew。我需要解析这个字符串,然后在=之前和=之后得到一块。符号.可以多次出现。那么,请告诉我,我可以使用哪个正则表达式进行解析?谢谢。

3 个答案:

答案 0 :(得分:1)

纯粹基于你的例子:

/([a-z.]+)=([a-z]+)/

修改

但实际上:

/([a-z_.]+)=(.*)/i

结果在内存组1和2中。代码:

if (preg_match('/^([a-z_.]+)=(.*)/i', $str, $matches)) {
    // $matches[1] contains part before =
    // $matches[2] contains part after =
}

顺便说一句,我通过锚定它来调整表达式(使用^)。如果这不起作用,只需将其从表达式中删除即可。

答案 1 :(得分:1)

你可以使用简单的字符串函数。

list($first, $second) = explode('=', 'abvd.qweqw.sdfs.a=aqwrwewrwerrew);

答案 2 :(得分:0)

这是完整的代码。

<?php
   if(preg_match('/([a-z.]+)=([a-z]+)/', "abvd.qweqw.sdfs.a=aqwrwewrwerrew", $matches)){
      print $matches[1]."\n";
      print $matches[2]."\n";
   }
?>