2013-10-11 5 views
0

Ищу регулярное выражение для замены следующей схемы [| E14L0] из этой выборки строки любезно помочьRegex для replacaing пользовательского шаблона

cash|E14L0^7.0,cash|E14L2^7.0,cash|E14L1^7.0,receivables^107.0,cash|E14L3^7.0, 

требуемого выход

"cash"^7.0 "cash"^7.0 "cash"^7.0 "receivables"^107.0 "cash"^7.0 

требование всех модели | E {digit} L {digit} необходимо заменить на '"' (двойные кавычки) все ',' между двумя условиями необходимо заменить на ' "' {space double quote}

Спасибо за помощь.

ответ

0

Регулярное выражение для матча ваш шаблон будет \|E\d+L\d+\^([^,]+),, и я полагаю, вы бы использовать его как это: preg_replace("\\|E\\d+L\\d+\\^([^,]+),", "\"$1 \"", target_string) - отмечает удвоение обратных косых черт в параметре шаблона.

Редактировать: Я пропустил второе требование о пробелах - добавлено.

0

Вы должны были бы две замены модели для этого:

echo preg_replace(['/\|E\d+L\d+/','/\b,\b/'], ['"', ' "'], $str); 

исход:

cash"^7.0 "cash"^7.0 "cash"^7.0 "receivables^107.0 "cash"^7.0, 
Смежные вопросы