如何使用javascript / jquery从字符串中删除文本?

时间:2017-03-17 06:57:34

标签: javascript jquery regex

我有一个网址喜欢这个:

  

http://abc-efff7b80a1e5b2.xyz.com

我想删除一些类似的文字:

  

http://abc.xyz.com

5 个答案:

答案 0 :(得分:3)

Regex将是解决此问题的一种相当简单的方法。

.replace(/\-.*?\./, '.')这会取代-.

之间的所有文字



var str = "http://abc-efff7b80a1e5b2.xyz.com";
str = str.replace(/\-.*?\./, '.');
console.log(str)

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;

答案 1 :(得分:2)

不确定它是否能正常工作,但这可能会有所帮助。

>>a
"http://abc-efff7b80a1e5b2.xyz.com"
>>re
>>a.replace(a.match(re)[0], "")
"http://abc.xyz.com"    

&#13;
&#13;
  function sanitize(url, regx) {
    return url.replace(url.match(regx)[0], "");
  }
Array.from(document.getElementsByTagName('tr')).forEach(e=> e.children[1].innerHTML = sanitize(e.children[0].innerHTML, /(?:\-\w+)/));
&#13;
<table>
<tr><td>http://abc-8n0qhnb9.xyz.com</td><td></td>></tr>
<tr><td>http://abc-q265r4by.xyz.com</td><td></td>></tr>
<tr><td>http://abc-xiwugpkf.xyz.com</td><td></td>></tr>
<tr><td>http://abc-wbojtv02.xyz.com</td><td></td>></tr>
<tr><td>http://abc-wf5aw904.xyz.com</td><td></td>></tr>
<tr><td>http://abc-vp37wiex.xyz.com</td><td></td>></tr>
<tr><td>http://abc-y04xag44.xyz.com</td><td></td>></tr>
<tr><td>http://abc-gw5nz2v0.xyz.com</td><td></td>></tr>
<tr><td>http://abc-0lu1r5bb.xyz.com</td><td></td>></tr>
<tr><td>http://abc-2r1o6r0l.xyz.com</td><td></td>></tr>
<tr><td>http://abc-bhs9gapw.xyz.com</td><td></td>></tr>
<tr><td>http://abc-j1b0ickq.xyz.com</td><td></td>></tr>
<tr><td>http://abc-8be4kis9.xyz.com</td><td></td>></tr>
<tr><td>http://abc-hcufvqot.xyz.com</td><td></td>></tr>
<tr><td>http://abc-eeeze0w9.xyz.com</td><td></td>></tr>
<tr><td>http://abc-0ya1j44x.xyz.com</td><td></td>></tr>
<tr><td>http://abc-jmquwmc2.xyz.com</td><td></td>></tr>
<tr><td>http://abc-6rjg674m.xyz.com</td><td></td>></tr>
<tr><td>http://abc-tajrtltl.xyz.com</td><td></td>></tr>
<tr><td>http://abc-y2k01kmn.xyz.com</td><td></td>></tr>
<tr><td>http://abc-rujlhgjf.xyz.com</td><td></td>></tr>
<tr><td>http://abc-r18o2cm9.xyz.com</td><td></td>></tr>
<tr><td>http://abc-23lemwng.xyz.com</td><td></td>></tr>
<tr><td>http://abc-bvsa71rj.xyz.com</td><td></td>></tr>
<tr><td>http://abc-ydxycm8w.xyz.com</td><td></td>></tr>
<tr><td>http://abc-79rwm0td.xyz.com</td><td></td>></tr>
<tr><td>http://abc-cpe62kkn.xyz.com</td><td></td>></tr>
<tr><td>http://abc-6u5uby9k.xyz.com</td><td></td>></tr>
<tr><td>http://abc-2a032pvi.xyz.com</td><td></td>></tr>
<tr><td>http://abc-1c0poy7q.xyz.com</td><td></td>></tr>
</table>
&#13;
&#13;
&#13;

答案 2 :(得分:1)

您可以使用spilt执行此操作。请按照以下代码::

var url = 'http://abc-efff7b80a1e5b2.xyz.com';
var split_url = url.split('.');
var start_url = split_url[0].split('-')[0];
var full_url = start_url + '.' + split_url[1] + '.' + split_url[2];
console.log(full_url);

答案 3 :(得分:1)

应该很容易。获取值并使用replace方法。

$('button').click(function(e){
  e.preventDefault();
  var str = $('#txt').val();
  var regex = /(https?:\/\/abc)(\-.+)(.xyz.com)/ig
  str= str.replace(regex, "$1$3")
  $('#txt').val(str)
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" value="http://abc-efff7b80a1e5b2.xyz.com" id="txt"/>
<br/>
<br/>
<button type="button">Change value</button>

答案 4 :(得分:1)

Ty this:

var url = "http://abc-efff7b80a1e5b2.xyz.com";
url = url.replace(/-.*x/, '.x');
console.log(url);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>