gpt4 book ai didi

javascript - 使用 Autolinker.js 排除特定链接

转载 作者:行者123 更新时间:2023-11-30 09:53:37 42 4
gpt4 key购买 nike

我正在使用 Autolinker.js链接从表单输入的文本,但我想将 example.com 排除在链接之外。

var formInput = "Don't link example.com but link google.com and www.kbb.com please";
var linkedText = Autolinker.link(formInput);

自然会生成具有两个 url 链接的 linkedText。我尝试使用

更改 url 选项
var options = {urls: { schemeMatches: true, wwwMatches: true, tldMatches: false }};
var linkedText = Autolinker.link(formInput, options);

但这会消除 google.comexample.com 上的链接,同时保留 www.kbb.com 链接。

基本上我只是想排除一个特定的 url,即 example.com,不被链接。

最佳答案

抱歉我才注意到这个话题。我是图书馆的作者。我知道现在已经很晚了,但将此回复留给遇到它的其他人。

从自动链接中排除特定 url 的最简单方法是利用 replaceFn 选项。例如:

var formInput = "Don't link example.com but link google.com and www.kbb.com please";

var linkedText = Autolinker.link( formInput, {
replaceFn: function( match ) {
if( match.getType() === 'url' ) {
var url = match.getUrl();

if( url.indexOf( 'example.com' ) !== -1 ) {
return false; // don't autolink matches for example.com
}
}

return true; // autolink everything else as usual
}
} );

这会产生以下结果:

Don't link example.com but link <a href="http://google.com" target="_blank" rel="noopener noreferrer">google.com</a> and <a href="http://www.kbb.com" target="_blank" rel="noopener noreferrer">kbb.com</a> please

这里有一些关于可以在 UrlMatch 对象上调用的方法的文档:http://greg-jacobs.com/Autolinker.js/api/#!/api/Autolinker.match.Url

还有一个更深入的使用 replaceFn 的例子:https://github.com/gregjacobs/Autolinker.js#custom-replacement-function

关于javascript - 使用 Autolinker.js 排除特定链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35135480/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com