fixing bug #2876 (bieniek at dotzilla dot de). This will require php >= 4.1.0 on unix or php >= 4.2.3 on win.

git-svn-id: https://svn.php.net/repository/pear/packages/Spreadsheet_Excel_Writer/trunk@200191 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Xavier Noguer Gallego 2005-11-08 00:22:35 +00:00
parent a4e20b916e
commit 73df4657d0
1 changed files with 12 additions and 12 deletions

View File

@ -552,12 +552,12 @@ class Spreadsheet_Excel_Writer_Parser extends PEAR
return $this->_convertRef2d($token); return $this->_convertRef2d($token);
} }
// match external references like Sheet1!A1 or Sheet1:Sheet2!A1 // match external references like Sheet1!A1 or Sheet1:Sheet2!A1
elseif (preg_match("/^\w+(\:\w+)?\![A-Ia-i]?[A-Za-z](\d+)$/",$token)) elseif (preg_match("/^\w+(\:\w+)?\![A-Ia-i]?[A-Za-z](\d+)$/u",$token))
{ {
return $this->_convertRef3d($token); return $this->_convertRef3d($token);
} }
// match external references like 'Sheet1'!A1 or 'Sheet1:Sheet2'!A1 // match external references like 'Sheet1'!A1 or 'Sheet1:Sheet2'!A1
elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\![A-Ia-i]?[A-Za-z](\d+)$/",$token)) elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\![A-Ia-i]?[A-Za-z](\d+)$/u",$token))
{ {
return $this->_convertRef3d($token); return $this->_convertRef3d($token);
} }
@ -572,12 +572,12 @@ class Spreadsheet_Excel_Writer_Parser extends PEAR
return $this->_convertRange2d($token); return $this->_convertRange2d($token);
} }
// match external ranges like Sheet1!A1 or Sheet1:Sheet2!A1:B2 // match external ranges like Sheet1!A1 or Sheet1:Sheet2!A1:B2
elseif (preg_match("/^\w+(\:\w+)?\!([A-Ia-i]?[A-Za-z])?(\d+)\:([A-Ia-i]?[A-Za-z])?(\d+)$/",$token)) elseif (preg_match("/^\w+(\:\w+)?\!([A-Ia-i]?[A-Za-z])?(\d+)\:([A-Ia-i]?[A-Za-z])?(\d+)$/u",$token))
{ {
return $this->_convertRange3d($token); return $this->_convertRange3d($token);
} }
// match external ranges like 'Sheet1'!A1 or 'Sheet1:Sheet2'!A1:B2 // match external ranges like 'Sheet1'!A1 or 'Sheet1:Sheet2'!A1:B2
elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\!([A-Ia-i]?[A-Za-z])?(\d+)\:([A-Ia-i]?[A-Za-z])?(\d+)$/",$token)) elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\!([A-Ia-i]?[A-Za-z])?(\d+)\:([A-Ia-i]?[A-Za-z])?(\d+)$/u",$token))
{ {
return $this->_convertRange3d($token); return $this->_convertRange3d($token);
} }
@ -1222,14 +1222,14 @@ class Spreadsheet_Excel_Writer_Parser extends PEAR
return $token; return $token;
} }
// If it's an external reference (Sheet1!A1 or Sheet1:Sheet2!A1) // If it's an external reference (Sheet1!A1 or Sheet1:Sheet2!A1)
elseif (preg_match("/^\w+(\:\w+)?\![A-Ia-i]?[A-Za-z][0-9]+$/",$token) and elseif (preg_match("/^\w+(\:\w+)?\![A-Ia-i]?[A-Za-z][0-9]+$/u",$token) and
!ereg("[0-9]",$this->_lookahead) and !ereg("[0-9]",$this->_lookahead) and
($this->_lookahead != ':') and ($this->_lookahead != '.')) ($this->_lookahead != ':') and ($this->_lookahead != '.'))
{ {
return $token; return $token;
} }
// If it's an external reference ('Sheet1'!A1 or 'Sheet1:Sheet2'!A1) // If it's an external reference ('Sheet1'!A1 or 'Sheet1:Sheet2'!A1)
elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\![A-Ia-i]?[A-Za-z][0-9]+$/",$token) and elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\![A-Ia-i]?[A-Za-z][0-9]+$/u",$token) and
!ereg("[0-9]",$this->_lookahead) and !ereg("[0-9]",$this->_lookahead) and
($this->_lookahead != ':') and ($this->_lookahead != '.')) ($this->_lookahead != ':') and ($this->_lookahead != '.'))
{ {
@ -1248,13 +1248,13 @@ class Spreadsheet_Excel_Writer_Parser extends PEAR
return $token; return $token;
} }
// If it's an external range like Sheet1!A1 or Sheet1:Sheet2!A1:B2 // If it's an external range like Sheet1!A1 or Sheet1:Sheet2!A1:B2
elseif (preg_match("/^\w+(\:\w+)?\!([A-Ia-i]?[A-Za-z])?[0-9]+:([A-Ia-i]?[A-Za-z])?[0-9]+$/",$token) and elseif (preg_match("/^\w+(\:\w+)?\!([A-Ia-i]?[A-Za-z])?[0-9]+:([A-Ia-i]?[A-Za-z])?[0-9]+$/u",$token) and
!ereg("[0-9]",$this->_lookahead)) !ereg("[0-9]",$this->_lookahead))
{ {
return $token; return $token;
} }
// If it's an external range like 'Sheet1'!A1 or 'Sheet1:Sheet2'!A1:B2 // If it's an external range like 'Sheet1'!A1 or 'Sheet1:Sheet2'!A1:B2
elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\!([A-Ia-i]?[A-Za-z])?[0-9]+:([A-Ia-i]?[A-Za-z])?[0-9]+$/",$token) and elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\!([A-Ia-i]?[A-Za-z])?[0-9]+:([A-Ia-i]?[A-Za-z])?[0-9]+$/u",$token) and
!ereg("[0-9]",$this->_lookahead)) !ereg("[0-9]",$this->_lookahead))
{ {
return $token; return $token;
@ -1489,14 +1489,14 @@ class Spreadsheet_Excel_Writer_Parser extends PEAR
return $result; return $result;
} }
// If it's an external reference (Sheet1!A1 or Sheet1:Sheet2!A1) // If it's an external reference (Sheet1!A1 or Sheet1:Sheet2!A1)
elseif (preg_match("/^\w+(\:\w+)?\![A-Ia-i]?[A-Za-z][0-9]+$/",$this->_current_token)) elseif (preg_match("/^\w+(\:\w+)?\![A-Ia-i]?[A-Za-z][0-9]+$/u",$this->_current_token))
{ {
$result = $this->_createTree($this->_current_token, '', ''); $result = $this->_createTree($this->_current_token, '', '');
$this->_advance(); $this->_advance();
return $result; return $result;
} }
// If it's an external reference ('Sheet1'!A1 or 'Sheet1:Sheet2'!A1) // If it's an external reference ('Sheet1'!A1 or 'Sheet1:Sheet2'!A1)
elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\![A-Ia-i]?[A-Za-z][0-9]+$/",$this->_current_token)) elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\![A-Ia-i]?[A-Za-z][0-9]+$/u",$this->_current_token))
{ {
$result = $this->_createTree($this->_current_token, '', ''); $result = $this->_createTree($this->_current_token, '', '');
$this->_advance(); $this->_advance();
@ -1511,14 +1511,14 @@ class Spreadsheet_Excel_Writer_Parser extends PEAR
return $result; return $result;
} }
// If it's an external range (Sheet1!A1 or Sheet1!A1:B2) // If it's an external range (Sheet1!A1 or Sheet1!A1:B2)
elseif (preg_match("/^\w+(\:\w+)?\!([A-Ia-i]?[A-Za-z])?[0-9]+:([A-Ia-i]?[A-Za-z])?[0-9]+$/",$this->_current_token)) elseif (preg_match("/^\w+(\:\w+)?\!([A-Ia-i]?[A-Za-z])?[0-9]+:([A-Ia-i]?[A-Za-z])?[0-9]+$/u",$this->_current_token))
{ {
$result = $this->_current_token; $result = $this->_current_token;
$this->_advance(); $this->_advance();
return $result; return $result;
} }
// If it's an external range ('Sheet1'!A1 or 'Sheet1'!A1:B2) // If it's an external range ('Sheet1'!A1 or 'Sheet1'!A1:B2)
elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\!([A-Ia-i]?[A-Za-z])?[0-9]+:([A-Ia-i]?[A-Za-z])?[0-9]+$/",$this->_current_token)) elseif (preg_match("/^'[\w -]+(\:[\w -]+)?'\!([A-Ia-i]?[A-Za-z])?[0-9]+:([A-Ia-i]?[A-Za-z])?[0-9]+$/u",$this->_current_token))
{ {
$result = $this->_current_token; $result = $this->_current_token;
$this->_advance(); $this->_advance();