@@ -249,7 +249,7 @@ Lexer.prototype.token = function(src, top) {
249
249
250
250
item = {
251
251
type : 'table' ,
252
- header : cap [ 1 ] . replace ( / ^ * | * \| * $ / g, '' ) . split ( / * \| * / ) ,
252
+ header : splitCells ( cap [ 1 ] . replace ( / ^ * | * \| * $ / g, '' ) ) ,
253
253
align : cap [ 2 ] . replace ( / ^ * | \| * $ / g, '' ) . split ( / * \| * / ) ,
254
254
cells : cap [ 3 ] . replace ( / \n $ / , '' ) . split ( '\n' )
255
255
} ;
@@ -267,7 +267,7 @@ Lexer.prototype.token = function(src, top) {
267
267
}
268
268
269
269
for ( i = 0 ; i < item . cells . length ; i ++ ) {
270
- item . cells [ i ] = item . cells [ i ] . split ( / * \| * / ) ;
270
+ item . cells [ i ] = splitCells ( item . cells [ i ] ) ;
271
271
}
272
272
273
273
this . tokens . push ( item ) ;
@@ -416,7 +416,7 @@ Lexer.prototype.token = function(src, top) {
416
416
417
417
item = {
418
418
type : 'table' ,
419
- header : cap [ 1 ] . replace ( / ^ * | * \| * $ / g, '' ) . split ( / * \| * / ) ,
419
+ header : splitCells ( cap [ 1 ] . replace ( / ^ * | * \| * $ / g, '' ) ) ,
420
420
align : cap [ 2 ] . replace ( / ^ * | \| * $ / g, '' ) . split ( / * \| * / ) ,
421
421
cells : cap [ 3 ] . replace ( / (?: * \| * ) ? \n $ / , '' ) . split ( '\n' )
422
422
} ;
@@ -434,9 +434,8 @@ Lexer.prototype.token = function(src, top) {
434
434
}
435
435
436
436
for ( i = 0 ; i < item . cells . length ; i ++ ) {
437
- item . cells [ i ] = item . cells [ i ]
438
- . replace ( / ^ * \| * | * \| * $ / g, '' )
439
- . split ( / * \| * / ) ;
437
+ item . cells [ i ] = splitCells (
438
+ item . cells [ i ] . replace ( / ^ * \| * | * \| * $ / g, '' ) ) ;
440
439
}
441
440
442
441
this . tokens . push ( item ) ;
@@ -1311,6 +1310,16 @@ function merge(obj) {
1311
1310
return obj ;
1312
1311
}
1313
1312
1313
+ function splitCells ( tableRow ) {
1314
+ var cells = tableRow . replace ( / ( [ ^ \\ ] ) \| / g, '$1 |' ) . split ( / + \| * / ) ,
1315
+ i = 0 ;
1316
+
1317
+ for ( ; i < cells . length ; i ++ ) {
1318
+ cells [ i ] = cells [ i ] . replace ( / \\ \| / g, '|' ) ;
1319
+ }
1320
+ return cells ;
1321
+ }
1322
+
1314
1323
/**
1315
1324
* Marked
1316
1325
*/
0 commit comments