Open
Description
I have this string:
let text = "{form 1} {form 2} {form 1:3}";
and this regexp:
/{form (\d+(:\d+)?)}/g
that should match {form x} and {form x:y}
I am executing:
text = reactStringReplace(text, /{form (\d+(:\d+)?)}/g, (match, i) => { return 'match: ${match}, i: ${i}'; });
then in the return of my component I have this:
return (
<div className={"cfs-dove__thread-content-message"}>
{replacedText &&
replacedText.map((el, i) => {
return (
<p key={`lettercontent${i}`} dangerouslySetInnerHTML={{ __html: el }}></p>
);
})}
</div>
);
and this is de output:
<div class="cfs-dove__thread-content-message">
<p>match: 1, i: 1</p>
<p>2</p>
<p>match: 1:3, i: 7</p>
<p>:3</p>
<p>match: , i: 9</p>
</div>
As you can see, the first and third <p>
are fine. But the rest aren`t.
The second is the matched value of {form 2} but didn't enter in the replace function.
The forth is only part of the matched value of {form 1:3} and also didn't enter in the function.
And the last did enters in the replace function but the match is "";
Metadata
Metadata
Assignees
Labels
No labels