| 12345678910111213141516171819202122232425262728293031 |
- var re=/\[[a-zA-Z0-9\s]+\]\(@\d+\.\d+\)/
- var md = 'bla bla bla [rel link 1](@2.1) bla bla [link 2](@3.4)'
- var matches;
- var firstMatch;
- var matchIndex;
- var remaining = md;
- var bits = [];
- var beforeMatch;
- var afterMatch;
- do {
- matches = re.exec(remaining);
- if(! matches) {
- break;
- }
- firstMatch = matches[0];
- matchIndex = remaining.indexOf(firstMatch);
- beforeMatch = remaining.slice(0, matchIndex);
- remaining = remaining.slice(firstMatch.length + matchIndex);
- bits.push({
- md: beforeMatch
- });
- bits.push({
- link: firstMatch
- });
- } while(1)
- console.log(bits);
|