For markdig, the strategy followed is that | has a higher priority over emphasis inline elements but lower priority to code backsticks or links. The parsing of the table is done when parsing the inlines of a paragraph block (so that when match occurs, it will transform the ParagraphBlock into a Table)
If you look at this test on babelmark3:
| c | d |
| - | - |
| *a | b* |
| `e | f` |
| [g | h](http://a.com) |
the combination of resuts are still quite different across the different markdown processors.
But with a closer look:
- For
| *a | b* |most of the markdown parsers treat|as higher precedence than emphasis - For backsticks most parsers treat them with higher precedence over
| - For
| [g | h](http://a.com) |most parsers treat|with higher precedence than links
So in markdig, I followed 1) and 2), but for 3) I followed to give | lower precedence to links