var searchTerms = escape(jQuery('input#q').val());
var st = searchTerms.trim();
var res = st.replaceAll("TITLE","ti").replaceAll("%20","%20and%20").replaceAll("AUTHOR","au");
我有上面的代码,需要双引号中的搜索词值作为结果
它给出的结果 URL 为:'&query=heartmate%20and%20owens'
但我需要它:'&query="heartmate"%20and%20"owens"'
最佳答案
最简单的方法是在将值注入(inject)请求之前将它们映射到新值。但首先您需要将字符串拆分为单独的术语...
let terms = st.split(' ');
这将返回字符串的各个元素的数组,以空格字符分割, 然后您可以 trim 并附加该术语...
terms.map(term => {
term.trim(); // <-- this removes all of the whitespace characters, including
// space, tab, no-break space, and all the line terminator
// characters, including LF, CR, etc. from the beginning and end
// of the string
return '"' + term + '"';
});
您可能会发现在应用map
之前需要检查term
的条件,这实际上取决于您正在做什么。
关于javascript - 使用 Javascript 在 URL 中获取 searchTerms 结果查询的双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59720903/