Вам не нужно регулярное выражение для этого. Вы можете использовать strpos () , чтобы найти индекс ', cname:', а затем substr () до этого индекса.
<?php
$aa = "Ability: N/S,Session: Session #1: Tues May 31st - Fri June 10th (1-5:30PM),Time: #1 only: 1am,cname: mathi";
$pos = strpos($aa, ',cname:');
$bb = substr($aa, 0, $pos);
echo $bb, "\n";
но если по какой-либо причине вы настаиваете на использовании регулярных выражений для этого, вы захотите использовать preg_replace () :
<?php
$aa = "Ability: N/S,Session: Session #1: Tues May 31st - Fri June 10th (1-5:30PM),Time: #1 only: 1am,cname: mathi";
$bb = preg_replace('#,cname:.*$#', '', $aa);
echo $bb, "\n";
и если вы не хотите изменять строку, вы можете использовать preg_match () :
<?php
$aa = "Ability: N/S,Session: Session #1: Tues May 31st - Fri June 10th (1-5:30PM),Time: #1 only: 1am,cname: mathi";
if (preg_match('#^(.+),cname:.*$#', $aa, $match)) {
echo $match[1], "\n";
}