0

私はこの文字列を持っています

@[181] @[183] @[4563]

この文字列から、この場合 [] の間の値を取得したい

181,183,4563

4

4 に答える 4

2

正規表現とすべてを使用するのはセクシーに聞こえるかもしれませんが、非常に適切にフォーマットされた入力文字列があるため、これは完全な電力/オーバーヘッドを必要としない場合です。

$string = '@[181] @[183] @[4563]';
$needles = array('@', '[', ']');
$cleaned_string = str_replace($needles, '', $string);
$result_array = explode(' ', $cleaned_string); 
于 2013-07-15T22:21:08.857 に答える
0

配列間の値が数値であると仮定すると、これは非常に単純です

 $s =  '@[181] @[183] @[4563]';
 preg_match_all('/\d+/', $s, $m);

 $matches_as_array = $m[0];
 $matches_as_string = implode(',', $m[0]);
于 2013-07-15T22:25:14.943 に答える