I'm trying to wrap words and words sequence from a given list with preg_replace. It almost works, but there are some use cases it doesn't and I can't figure it how.For instance I do this: \[code\] // sort by descending length usort($this->_keywords, function($a,$b){return(strlen($a)<strlen($b));}); // wrapper is -%string%- foreach ($this->_keywords as $keyword) { $value = http://stackoverflow.com/questions/3923901/preg_replace('/((?!-)' . $keyword . '(?!-))/i', str_replace('%string%', '\1', $this->_wrapper), $value); }\[/code\]From this keyword list:
- lorem
- ipsum
- sit amet
- null
- sed
- sed enim