私は文字列を持っていますabvd.qweqw.sdfs.a=aqwrwewrwerrew
。この文字列を解析して、前後のピースを取得する必要があり=
ます=
。シンボル.
は何度も発生する可能性があります。では、解析に使用できる正規表現を教えてください。ありがとうございました。
質問する
84 次
3 に答える
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 =
}
ところで、私は(を使用して^
)それを固定することによって式を微調整しました。それでも問題が解決しない場合は、式から削除してください。
于 2012-06-19T07:16:14.320 に答える
1
そのために単純な文字列関数を使用できます。
list($first, $second) = explode('=', 'abvd.qweqw.sdfs.a=aqwrwewrwerrew);
于 2012-06-19T07:16:58.807 に答える
0
それが完全なコードです。
<?php
if(preg_match('/([a-z.]+)=([a-z]+)/', "abvd.qweqw.sdfs.a=aqwrwewrwerrew", $matches)){
print $matches[1]."\n";
print $matches[2]."\n";
}
?>
于 2012-06-19T07:37:20.243 に答える