diff --git a/bits/47_styxml.js b/bits/47_styxml.js
index c89e090..034d996 100644
--- a/bits/47_styxml.js
+++ b/bits/47_styxml.js
@@ -5,7 +5,7 @@ function parse_borders(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch (y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.4 border CT_Border */
@@ -79,7 +79,7 @@ function parse_fills(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch(y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.20 fill CT_Fill */
@@ -145,7 +145,7 @@ function parse_fonts(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch (y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.22 font CT_Font */
@@ -263,7 +263,7 @@ function parse_numFmts(t, styles, opts) {
if(!m) return;
for(i=0; i < m.length; ++i) {
var y = parsexmltag(m[i]);
- switch(y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': case '': break;
case '': case '': case '': break;
/* 18.8.45 xf CT_Xf */
@@ -357,11 +357,11 @@ function write_cellXfs(cellXfs)/*:string*/ {
/* 18.8 Styles CT_Stylesheet*/
var parse_sty_xml= (function make_pstyx() {
-var numFmtRegex = /]*)>[\S\s]*?<\/numFmts>/;
-var cellXfRegex = /]*)>[\S\s]*?<\/cellXfs>/;
-var fillsRegex = /]*)>[\S\s]*?<\/fills>/;
-var fontsRegex = /]*)>[\S\s]*?<\/fonts>/;
-var bordersRegex = /]*)>[\S\s]*?<\/borders>/;
+var numFmtRegex = /<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;
+var cellXfRegex = /<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;
+var fillsRegex = /<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;
+var fontsRegex = /<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;
+var bordersRegex = /<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;
return function parse_sty_xml(data, themes, opts) {
var styles = {};
diff --git a/xlsx.flow.js b/xlsx.flow.js
index 47c7f0f..b9bb8a9 100644
--- a/xlsx.flow.js
+++ b/xlsx.flow.js
@@ -7953,7 +7953,7 @@ function parse_borders(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch (y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.4 border CT_Border */
@@ -8027,7 +8027,7 @@ function parse_fills(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch(y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.20 fill CT_Fill */
@@ -8093,7 +8093,7 @@ function parse_fonts(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch (y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.22 font CT_Font */
@@ -8211,7 +8211,7 @@ function parse_numFmts(t, styles, opts) {
if(!m) return;
for(i=0; i < m.length; ++i) {
var y = parsexmltag(m[i]);
- switch(y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': case '': break;
case '': case '': case '': break;
/* 18.8.45 xf CT_Xf */
@@ -8305,11 +8305,11 @@ function write_cellXfs(cellXfs)/*:string*/ {
/* 18.8 Styles CT_Stylesheet*/
var parse_sty_xml= (function make_pstyx() {
-var numFmtRegex = /]*)>[\S\s]*?<\/numFmts>/;
-var cellXfRegex = /]*)>[\S\s]*?<\/cellXfs>/;
-var fillsRegex = /]*)>[\S\s]*?<\/fills>/;
-var fontsRegex = /]*)>[\S\s]*?<\/fonts>/;
-var bordersRegex = /]*)>[\S\s]*?<\/borders>/;
+var numFmtRegex = /<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;
+var cellXfRegex = /<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;
+var fillsRegex = /<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;
+var fontsRegex = /<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;
+var bordersRegex = /<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;
return function parse_sty_xml(data, themes, opts) {
var styles = {};
diff --git a/xlsx.js b/xlsx.js
index d5f4656..49a705c 100644
--- a/xlsx.js
+++ b/xlsx.js
@@ -7858,7 +7858,7 @@ function parse_borders(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch (y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.4 border CT_Border */
@@ -7932,7 +7932,7 @@ function parse_fills(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch(y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.20 fill CT_Fill */
@@ -7998,7 +7998,7 @@ function parse_fonts(t, styles, themes, opts) {
var pass = false;
t[0].match(tagregex).forEach(function(x) {
var y = parsexmltag(x);
- switch (y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': break;
/* 18.8.22 font CT_Font */
@@ -8116,7 +8116,7 @@ function parse_numFmts(t, styles, opts) {
if(!m) return;
for(i=0; i < m.length; ++i) {
var y = parsexmltag(m[i]);
- switch(y[0]) {
+ switch(strip_ns(y[0])) {
case '': case '': case '': break;
case '': case '': case '': break;
/* 18.8.45 xf CT_Xf */
@@ -8210,11 +8210,11 @@ function write_cellXfs(cellXfs) {
/* 18.8 Styles CT_Stylesheet*/
var parse_sty_xml= (function make_pstyx() {
-var numFmtRegex = /]*)>[\S\s]*?<\/numFmts>/;
-var cellXfRegex = /]*)>[\S\s]*?<\/cellXfs>/;
-var fillsRegex = /]*)>[\S\s]*?<\/fills>/;
-var fontsRegex = /]*)>[\S\s]*?<\/fonts>/;
-var bordersRegex = /]*)>[\S\s]*?<\/borders>/;
+var numFmtRegex = /<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;
+var cellXfRegex = /<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;
+var fillsRegex = /<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;
+var fontsRegex = /<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;
+var bordersRegex = /<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;
return function parse_sty_xml(data, themes, opts) {
var styles = {};