Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Remove string after predefined string

I am pulling content from an RSS feed, before using jquery to format and edit the rss feed (string) that is returned. I am using replace to replace strings and characters like so:

var spanish = $("#wod a").text();
var newspan = spanish.replace("=","-");
$("#wod a").text(newspan);

This works great. I am also trying to remove all text after a certain point. Similar to truncation, I would like to hide all text starting from the word "Example".

In this particular RSS feed, the word example is in every feed. I would like to hide "example" and all text the follows that word. How can I accomplish this?

like image 419
JCHASE11 Avatar asked Nov 29 '12 21:11

JCHASE11


3 Answers

Though there is not enough jQuery, you even don't need it to remove everything after a certain word in the given string. The first approach is to use substring:

var new_str = str.substring(0, str.indexOf("Example"));

The second is a trick with split:

var new_str = str.split("Example")[0];
like image 148
VisioN Avatar answered Sep 27 '22 17:09

VisioN


If you also want to keep "Example" and just remove everything after that particular word, you can do:

var str = "aaaa1111?bbb&222:Example=123456",
    newStr = str.substring(0, str.indexOf('Example') + 'Example'.length);

// will output: aaaa1111?bbb&222:Example
like image 22
patad Avatar answered Sep 27 '22 17:09

patad


jQuery isn't intended for string manipulation, you should use Vanilla JS for that:

newspan = newspan.replace(/example.*$/i, "");

The .replace() method accepts a regular expression, so in this case I've used /example.*$/i which does a case-insensitive match against the word "example" followed by zero or more of any other characters to the end of the string and replaces them with an empty string.

like image 22
nnnnnn Avatar answered Sep 27 '22 16:09

nnnnnn