2016-07-11 3 views
1

Я пытаюсь использовать это регулярное выражение, но вместе с прописными буквами он как-то соответствует строчному.регулярное выражение соответствует прописным буквам, пробелам и символу и апострофам от начала строки до первой запятой

preg_match("/^([A-Z&\s\']+),/i", $line, $match); 

Любые идеи, где моя ошибка? Спасибо!

+0

Можете ли вы привести пример того, что вы хотите совместить, и как это не удается – Rizier123

+1

Невозможно воспроизвести ... можете ли вы предоставить скриншоты и/или примеры? – Confiqure

+0

где находится остальная часть php для него, у вас есть флаг '\ i'? – ArtisticPhoenix

ответ

1

Вы должны удалить регистрозависимости модификатор /i:

preg_match('/^([A-Z&\s\']+),/', $line, $match); 
          ^

В противном случае [A-Z] диапазон соответствует как [a-z] и [A-Z] диапазонов. Подробнее

Pattern:

  • ^ - начало строки
  • ([A-Z&\s\']+) - 1-й группы захвата 1 или более заглавных ASCII буквы (A-Z), буквальный &, пробел (\s) или дословный '
  • , - a запятая
Смежные вопросы