You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改JS书签脚本实现LinkedIn搜索词的正则化布尔OR转换

解决LinkedIn人才搜索布尔OR格式转换的书签脚本

核心需求实现思路

要同时兼容带OR和不带OR的输入,且正确识别引号内的多词短语,关键走这三步:

  1. 统一分隔符:把输入里引号外的OR(带前后空格)替换成空格,让所有术语的分隔方式统一为空格。
  2. 提取完整术语:用正则精准匹配出所有独立术语——既包括带引号的多词短语,也包括普通单词。
  3. 拼接目标格式:第一个术语直接保留,后续每个术语用OR(术语)的格式拼接,生成LinkedNow支持的长布尔搜索串。

修正后的完整书签脚本

javascript:(function (){
    // 获取页面选中的文本,无选中则为空字符串
    let selectedText = '';
    if (window.getSelection) {
        selectedText = window.getSelection().toString();
    } else if (document.selection) {
        selectedText = document.selection.createRange().text;
    }

    // 弹出输入框,默认填充选中文本
    const inputStr = prompt('输入LinkedIn搜索术语(支持空格/OR分隔,带引号的短语自动保留):', selectedText.trim());
    if (!inputStr) return;

    // 预处理:仅替换引号外的" OR "为空格,统一分隔规则
    let processedStr = inputStr.trim().replace(/(?=(?:[^"]*"[^"]*")*[^"]*$) OR /g, ' ');

    // 匹配所有合法术语:带引号的短语(支持转义引号)/非空格单词
    const terms = processedStr.match(/"[^"\\]*(?:\\.[^"\\]*)*"|'[^'\\]*(?:\\.[^'\\]*)*'|\S+/g) || [];

    if (terms.length === 0) return;

    // 拼接成LinkedIn支持的格式
    let searchKeywords = terms[0];
    for (let i = 1; i < terms.length; i++) {
        searchKeywords += ` OR(${terms[i]})`;
    }

    // 跳转至LinkedIn人才搜索页面
    void(location.href = `https://www.linkedin.com/search/results/people/?keywords=${encodeURIComponent(searchKeywords)}`);
})();

关键细节说明

  1. 引号外OR替换正则:/(?=(?:[^"]*"[^"]*")*[^"]*$) OR /g通过正向环视判断OR是否处于双引号之外,避免误替换引号内的OR(比如"front OR back end"里的OR会被完整保留)。
  2. 术语匹配正则:/"[^"\\]*(?:\\.[^"\\]*)*"|'[^'\\]*(?:\\.[^'\\]*)*'|\S+/g会精准匹配三类内容:
    • 双引号包裹的多词短语(支持转义双引号,比如"he said \"hello\"")
    • 单引号包裹的多词短语(同理支持转义单引号)
    • 连续非空格字符(普通单词术语,比如react、node.js)
  3. 格式拼接逻辑:第一个术语直接保留原始格式,后续每个术语用OR(术语)包裹,完全贴合LinkedIn当前支持的长布尔语法要求。

测试示例

输入:react "full stack" node.js "back end" developer
输出:react OR("full stack") OR(node.js) OR("back end") OR(developer)

输入:Keyword1 OR Keyword2 OR "keyword phrase3" OR "keyword phrase4" OR keyword5 OR keyword6
输出:Keyword1 OR(Keyword2) OR("keyword phrase3") OR("keyword phrase4") OR(keyword5) OR(keyword6)

内容的提问来源于stack exchange,提问作者Glenn Gutmacher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 10:50:24