使用预定义标签和正则表达式匹配来格式化文本

时间:2019-05-21 06:36:21

标签: regex reactjs elasticsearch highlight

我有一个React应用程序,其中我查询elasticsearch并允许用户查看收到的数据。

我也允许在拥有数据后在数据中搜索文本,并且我还想用react组件替换某些正则表达式匹配项,例如电话号码,电子邮件等。

要突出显示数据,elasticsearch使用预定义的标记来标记突出显示的数据,例如:&start&im Highlighted!&end&。为了突出显示本地搜索匹配项,我使用了相同的标记,但是我的问题是,如果我搜索了应该包含在正则表达式模式中的模式中包含的内容,则会破坏它。

例如,如果文本为“我的名字是eylon,我的邮件是ey@gmail.com”,而我搜索的单词“ gmail”现在是“ ... ey@&start&gmail&end&.com”,则该单词不再匹配正则表达式。

我真的很想听听别人在处理此用例之前遇到过类似的问题

谢谢:)

0 个答案:

没有答案