ユーザープレフィックスなしですべてのユーザーIDを取得する必要があるため、ドットと単語の終わりの間で取得しようとしています。
$string = 'users.user_id1, users.user_id2, users.user_id3, users.user_id4';
preg_match_all('/\.(.*?)\/B/', $string, $matches);
ユーザープレフィックスなしですべてのユーザーIDを取得する必要があるため、ドットと単語の終わりの間で取得しようとしています。
$string = 'users.user_id1, users.user_id2, users.user_id3, users.user_id4';
preg_match_all('/\.(.*?)\/B/', $string, $matches);
これを試して:
$string = 'users.user_id1, users.user_id2, users.user_id3, users.user_id4';
preg_match_all('/users.([^,]+),?/', $string, $matches);
使用する
preg_match_all('/(?<=\.)[^,]+(?=,|$)/', $string, $matches);
ただし、プレフィックスが固定されている場合は、必要に応じて文字列置換機能を使用できます。
str_ireplace('users.','',str_ireplace(' ','',$string))
スペースも処理します ありがとう
試す:
$string = 'users.user_id1, users.user_id2, users.user_id3, users.user_id4';
$temparray1 = explode(", ", $string);
$temparray2 = array();
foreach ($temparray1 as $value) {
$temp = explode(".", $value);
$temparray2[] = $temp[1];
}
$finalstring = implode(", ", $temparray2);
unset($temparray2);
unset($temparray1);
$finalstring
内容です。次のようになりますuser_id1, user_id2, user_id3, user_id4
。
別の形式で必要な場合は教えてください。
更新: Str_replace も可能です。書く:
$string = 'users.user_id1, users.user_id2, users.user_id3, users.user_id4';
$finalstring = str_replace('users.', '', $string);
文字列の内容についてはあまり用途がありません。