Search code examples
phpregexpreg-split

PHP preg_split() pattern for splitting by sentence periods with exception of spliting by periods in floats/prices


I would like to be able to preg_split content by periods after sentences i.e.

Lorem ipsum dolor sit 3.14 amet, elit. Vivamus sed elit eu. Morbi pulvinar dignissim.

should output (dots in floats shouldn't be split):

array(
  'Lorem ipsum dolor sit 3.14 amet, elit',
  'Vivamus sed elit eu',
  'Morbi pulvinar dignissim'
)

not

array(
  'Lorem ipsum dolor sit 3',
  '14 amet, elit',
  'Vivamus sed elit eu',
  'Morbi pulvinar dignissim'
)

any ideas how the preg_split pattern should looks like? cheers


Solution

  • This one may work

    $res = preg_split('/\.[^\d]/', $str);