Rhino JavaScript替换字符的方法&首字母大写

时间:2014-04-04 02:18:01

标签: javascript string replace rhino

我需要将付费搜索字词转换为普通的句子字符串。例如,Google引荐网址将包含以下内容:

问= JavaScript的+ stackoverlow + HELP

我当前的代码逃脱了这个值,但我认为我需要一个简单的函数来删除加号并正确设置案例,使它看起来像这样:

Javascript Stackoverflow帮助

这是我当前的设置。

if (landing.referrer.domain.match(/google\.com/)) {
  return unescape(landing.referrer.param('q'));
} else if (landing.referrer.domain.match(/yahoo\.com/)) {
  return unescape(landing.referrer.param('p')); 
} else if (landing.referrer.domain.match(/bing\.com/)) {
  return unescape(landing.referrer.param('q'));  
}

我只需要担心英语(拉丁语)字符集。

3 个答案:

答案 0 :(得分:1)

替换

var string = '+';
var re = new RegExp(find, 'g');

str = str.replace(re, '');

标题案例

function toTitleCase(str)
{
    return str.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();});
}

参考:Convert string to title case with JavaScript

答案 1 :(得分:1)

我会用:

if (!String.prototype.toTitleCase) {
    String.prototype.toTitleCase = function() {
        return this.charAt(0).toUpperCase() + this.substring(1).toLowerCase();
    }
}

function getSearchTerms(link) {
    link = link.substring(link.indexOf("=") + 1);

    var arr = link.split("+");
    for (var i = 0; i < arr.length; i++) {
        arr[i] = arr[i].toTitleCase();
    }

    return arr.join(" ");
}

JSFiddle DEMO

答案 2 :(得分:-1)

你可以在JavaScript中使用css。检查this answer

完整的代码可以是:

function format_str(str) {
    formatted_str = str.replace(/+/g, ' ');
    return '<span style="text-transform: capitalize">'+ formatted_str +'</span>';
}