出于学习目的,我正在ReactJs中构建类似于reddit的应用程序。我尝试制作一个文本区域,用户可以在其中通过按钮输入链接。该函数将生成如下内容:[display]what_link_will_display[link]actual_link[\link][\display]other_text
。目的是当我渲染此特定文本时,将其转换为如下形式:<a href="actual_link">what_link_will_display<\a>other_text
。我对RegEx的了解很少,因此我可以使用表达式来实现我想要的东西:
\[display\](.*?)\[link\](.*?)\[\\link\]\[\\display\]
和替换项:
<a href="$2">$1</a>
尽管它有效,至少在online js regex tool上进行测试时,正则表达式规则对我来说看起来很愚蠢,我不确定它是否适用于所有情况。有更好的方法吗?