在关键短语之后提取字符串的某个部分

时间:2013-03-21 04:30:58

标签: javascript jquery string

我很奇怪最好的方法是在字符串中查找特定的短语,然后将其后的所有内容存储在新变量中。 例如,如果......

var str = 'hello how are you doing the what is a dinosaur search Jim carrey';

“搜索”或“搜索”之后的所有内容,在这种情况下,“Jim carrey”应该存储在一个新的变量中称为val。

此外,如果有两个或更多个短语'search'或'search for'的实例,那么只存储val中最新的一个。

例如:如果str ='welcome我是搜索馅饼收件人搜索快辣椒收件人'然后val将是'快速辣椒收件人' 要么 如果str ='今天是78度搜索好天气和阳光,换句话说是搜索夏季结束时间的完美日子'那么val将是'夏天何时结束'。

5 个答案:

答案 0 :(得分:5)

试试这个RegExp:

var str = 'Today is 78 degrees search good weather and sunny in other words a perfect day for search for when does summer end';
var arr = str.split(/ search (for){0,1}/);

alert(arr[arr.length-1]);

答案 1 :(得分:1)

var str = "welcome I am search pie recipie search quick chili recipie";
var m = str.split('search');
alert(m.slice(-1));

  str.split('search').pop() // will do same thing

working DEMO

答案 2 :(得分:1)

Legendinmaking的回答在开始时返回带有空格的短语,并在搜索后返回所有内容或搜索使用此

var str = 'welcome I am search pie recipie search quick chili recipie';
 var param='search';
 var param1='search for';
 var n=str.lastIndexOf(param);
 var n1=str.lastIndexOf(param1);
 n=Math.max(n,n1);
 alert(str.substring(n+param.length + 1,str.length));

答案 3 :(得分:0)

我不确定这是最好的方法,但它有效,你可以尝试在jsbin更改srt值:http://jsbin.com/uguzup/1/edit

var str = 'Today is 78 degrees search good weather and sunny in other words a perfect day for search for when does summer end';
var val = str.split('search for').slice(-1)[0].split('search').slice(-1)[0]

答案 4 :(得分:0)

试试这个

var str = 'welcome I am search pie recipie search quick chili recipie';
    var param='search';
    var n=str.lastIndexOf(param);
    alert(str.substring(n+param.length,str.length));