const regex = new RegExp('<code>[^<]*</code>', 'gu')
const str = `<p>I am trying to have the \\"Birthday\\" and \\"Name\\" properties of an Org-mode entry added to the agenda automatically:</p>\\n\\n<pre><code>* John\\n :PROPERTIES:\\n :Name: John\\n :Birthday: (5 4 1900)\\n :END:\\n</code></pre>\\n\\n<p>I found a way to add an entry at the correct anniversary date in the agenda by inserting the following line right after the properties:</p>\\n\\n<pre><code>%%(apply 'diary-anniversary (read (org-entry-get nil \\"Birthday\\"))) John\\n</code></pre>\\n\\n<p>However, using this code, I still have to enter the name manually. Is there a way to have the value of the \\"Name\\" property added to the diary text automatically for all entries?</p>\\n\\n<p><strong>EDIT 1</strong>: the example did not work before, now added parantheses around the value of the birthday property</p>`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions