Wpis z mikrobloga

Hej Mirasy, jak usunąć ze stringa wszystkie znaki od + (wraz z plusem) do @ (bez małpy)?

Tak usuwam wszystko z + i @, a chce żeby @ została: \+(.*?)@

przykładowy: adssa+asdasdas@dasdas.pl
docelowy: adssa@dasdas.pl

#programowanie #regex
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@bla_bla_bla: to może

$str = 'adssa+asdasdas@dasdas.pl';
$pattern = '/\+.*(?=@)/';
echo preg_replace($pattern, '', $str);

Ten regex matchuje wszystko pomiędzy + a @ z wyłączeniem @.
  • Odpowiedz
A jak byś tak splitował sobie na + i brał pierwszy element ?:)
Tak czy inaczej, wszystkie rozwiązania wydają się śmierdzące, ja bym się najpierw zastanowił dlaczego musisz to robić i czy nie da się tego w innym miejscu naprawić.
  • Odpowiedz