Как экранировать символ «<» в регулярном выражении в Solr schema.xml?

Используя Solr 3.5.0 и в моем schema.xml, я использую следующее, чтобы отметить конец предложений и заменить пунктуацию в конце символическим токеном:

<charFilter class="solr.PatternReplaceCharFilterFactory" 
pattern="(?<=[^.!?\\s][^.!?]*(?:[.!?](?![']?\s|$)[^.!?]*)*)[.!?]+(?=\\s|$)"
replacement=" monkeysentence"/>

Я не уверен, что это вообще сработает для того, что я хочу, но сначала мне нужно решить проблему экранирования символа '<' в первом ретроспективном просмотре '?<='.

Я получаю следующую ошибку:

org.xml.sax.SAXParseException: The value of attribute "pattern" 
associated with an element type "null" must not contain the '<' character.

Я пытался использовать '\' как в:

 pattern="(?\<=[^.!?\\s][^.!?]*(?:[.!?](?![']?\s|$)[^.!?]*)*)[.!?]+(?=\\s|$)"

Но получаю ту же ошибку

7
задан Ramsel 19 April 2012 в 02:52
поделиться