jQuery - 重写各种字符串以使其看起来正确

时间:2015-03-12 21:24:41

标签: jquery

在我的自定义页面上,我可能会在这三种口味中形成一个带有以下文字的链接......

<h3 class="ms-srch-ellipsis"><a class="ms-srch-item-link" href="...">this_old_house_is_broken</a></h3>
<h3 class="ms-srch-ellipsis"><a class="ms-srch-item-link" href="...">this-old-house-is-broken</a></h3>
<h3 class="ms-srch-ellipsis"><a class="ms-srch-item-link" href="...">ThisOldHouseIsBroken</a></h3>

使用jQuery的最佳实践方法是什么,检查所有ms-srch-ellipsis元素并修复文本看起来像这样......

<h3 class="ms-srch-ellipsis"><a href="...">This Old House Is Broken</a></h3>

我开始使用这种方法,只是为了到达某个地方......但它没有改变任何东西......

$( ".ms-srch-item-link" ).each(function(e) {
  $(this).text().replace('-',/\s+/g);       
    $(this).text().replace('_',/\s+/g);     
});

1 个答案:

答案 0 :(得分:0)

$( ".ms-srch-item-link" ).each(function(e) {
  $(this).text().replace(function(i, text) { // apply replacement function
    return text.charAt(0).toUpperCase +      // capitalize first letter
           text.substring(1).
             replace(/([a-z])([A-Z])/g, function(m, g1, g2) { // camel case
               return g1 + " " + g2;
             }).
             replace(/(_|-)([a-z])/g, function(m, g1, g2) { // dash/underscore
               return " " + g2.toUpperCase();
             });

  });
});