【发布时间】:2015-06-17 23:50:49
【问题描述】:
我正在尝试创建一个替换“。”的基本脚本。或网站特定表格中 url 文本中的“_”。
代码:
$('tbody tr td:nth-child(2) div:nth-child(2) a').each(function() {
var link = $(this);
var linkText = link.text();
link.text( linkText.replace("."," ") );
link.text( linkText.replace("_"," ") );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<tbody>
<tr>
<td class="category">
<img src="image.gif" data-original="image.gif"></a>
</td>
<td class="filename">
<div class="visible-xs visible-sm">
<a href="link" class="link-class">VMware.Workstation.v11.1.2</a>
</div>
</td>
</tr>
<tr>
<td class="category">
<img src="image.gif" data-original="image.gif"></a>
</td>
<td class="filename">
<div class="visible-xs visible-sm">
<a href="link" class="link-class">ADOBE_AFTEREFFECTS_CC_V2015</a>
</div>
</td>
</tr>
</tbody>
但它不能正常工作。仅使用第一个文本操作并仅替换第一个“。”或“_”不是全部在整个字符串中。
例如:
"VMware.Workstation.v11.1.2" => "VMware Workstation.v11.1.2" - 仅删除第一个点
我需要的是
“ADOBE_AFTEREFFECTS_CC_V2015”=>“ADOBE AFTEREFFECTS CC V2015”和
"VMware Workstation.v11.1.2" => "VMware Workstation v11.1.2"
嗯,有没有办法不删除以 v 开头的字符串后的点(因为版本 v11.1.2)。
如果你能帮我创建这个脚本,我会很高兴,如果有更好的方法来选择这个表/链接并编辑它们的文本会很棒。
编辑
我几乎准备好了,但是这个正则表达式是......
/([\.\-\_])(?![\v\d])/g
【问题讨论】:
标签: javascript jquery replace