2 回答

TA貢獻1893條經驗 獲得超10個贊
在您的first內map,您可以按這些特定的關鍵字分隔行。當您在的正則表達式中包含捕獲組時split,捕獲的子字符串將包含在結果數組中,因此您可以執行以下操作:
<React.Fragment>
{
str.split('\n').map(line => (
<span>
{line.split(/\*\*(.+?)\*\*/).map((s, i) => i % 2 ? (<b>{s}</b>) : s)}
<br/>
</span>
))
}
</React.Fragment>
這看起來像降價。您還應該考慮使用markdown插件,react-markdown以使您的生活變得更輕松。

TA貢獻1799條經驗 獲得超9個贊
let str = "You would get items\nwhich value about **$50**\nif you **pre-booked** it!"
const res = str.split('\n').map(line =>
`<span> ${line.replace(/\*\*(.*?).\*\*/,match => `<b>${match.substring(2, match.length - 2 )}</b>`)} <br/> </span>`
)
console.log(res)
添加回答
舉報