2011-06-03 116 views

回答

3
preg_replace('/(.+?)/', '', $string); 

澄清:

  • 第一个字符EF BC 88表示为UTF-8,这是一种 “表意文字左括号”
  • 最后一个字符EF BC 89表示为UTF-8,其是“表意的右括号”

这些是east asian punctuation marks。它们不是7B-(7D-)

+0

你不需要逃避左paren吗?它表示backref的开始不是? – 2011-06-03 23:41:21

+1

@大卫,那不是左派。这是一个“(”字符。 – rid 2011-06-03 23:41:49

+0

你也不需要跳过括号: 'preg_replace('/\(.+?\)/','',$ string);' 否则它会是一个分组吗? – Colin 2011-06-03 23:42:04

0
$pattern = '/\([^)]*)/'; 
preg_replace($pattern, '', $string);