将HTML标记添加到此正则表达式字符串中

Add HTML tags to this regex string

本文关键字:正则表达式 字符串 添加 HTML      更新时间:2023-09-26

我正在使用一个小小的JS插件来截断我正在工作的网站上的多行文本。

唯一的问题是,脚本正在计算HTML标记<a href="..."></a>,例如在字符计数中,这会有点偏离。

这就是脚本当前排除字符的方式;

regex = /[!-'/:-@'[-`{-~]$/

它基本上只是去掉某些标点符号。

我试着把它改成这个;

regex = [!-'/:-@'[-`{-~]$<[^>]*>

但是,由于不太熟悉regex,它似乎不起作用。

如果有人能把我推向正确的方向,那就太好了。

在初始正则表达式中,您要查找与字符串尾部匹配的单个字符,可以是字符、单词或行。注意美元符号"$"。

regex = /[!-'/:-@'[-`{-~]$/

现在您想要匹配<>之间的任何内容。

regex = /[!-'/:-@'[-`{-~]$|<[^>]*$/

请注意,您将匹配:<<aaaa<aaaa<,直到匹配的字符串结束。

greedy_regex = /[!-'/:-@'[-`{-~]$|<[^>]*/
non_greedy_regex = /[!-'/:-@'[-`{-~]$|<[^>]*?/

如果删除第二个'$'-greedy_regex-它将执行贪婪匹配,匹配a<b>c</b>d<b>c</b>。与non_greedy_regex一样使用?,它将仅与"匹配。