2013-12-06 4 views
0

Я хочу, чтобы заменить текст на китайском + английском внутри кавычек:preg_replace Я хочу, чтобы заменить текст на китайском + английском внутри кавычек

образец исходного текста:

emMsg («Ваша версия PHP слишком низко, пожалуйста, используйте среду для поддержки PHP5 установлен английское слово «) ;.

или

(программа Будет автоматически создать базу данных, создать пустую базу данных или использовать существующую базу данных)

preg_replace("/(?:[(]([\p{Han}]+)[)])?/ux", '-', $val); 

, но результат не получен заранее, что я делаю неправильно?

+1

Вы показали нам пример исходного текста. Не могли бы вы предоставить нам пример результата тоже? Что вы ожидаете получить? – Jurik

+0

Есть много предыдущих вопросов/ответов на эту тему. Http://stackoverflow.com/questions/8989133/удалить-все-кроме-на-китайско-символов-с-регулярное выражение –

+0

к Журика: Ожидать, чтобы вырезать весь текст внутри скобок, и заменить его на «-» – Den68

ответ

0
$str = "emMsg('您的php版本过低,请选用支持PHP5的环境安装english word。');"; 
$res = preg_replace("~emMsg\(('*)(.+?)('*)\);~", 'emMsg(\\1-\\3);', $str); 
print_r($res); 

это то, что вам значит?

$str = "emMsg('您的php版本过低,请选用支持PHP5的环境安装english word。');"; 
$str = preg_replace("~\p{Han}+~u", '', $str); 
$res = preg_replace("~emMsg\(('*)(.+?)('*)\);~", 'emMsg(\\1\\2\\3);', $str); 
print_r($res); 

Я не думаю, что вы можете сопоставить все Han смешаны с латынью в любом формате.

+0

Спасибо за ваш пример, но это не делает счет на наличие китайского языка в скобках. должен быть удален только в klnstruktsii китайского алфавита. в исходных данных в скобках может найти себя и только английский текст. – Den68

+0

Да! SENK'S! :) – Den68

 Смежные вопросы

  • Нет связанных вопросов^_^