在关键短语之后提取字符串的特定部分

Extract a certain part of a string after a key phrase

本文关键字:定部 字符串 提取 短语 之后      更新时间:2023-09-26

我想知道最好的方法可以在字符串中查找特定的短语,然后将它之后的所有内容存储在一个新变量中。例如if…

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

在'search '或'search for '之后的所有内容,在本例中是'Jim carrey',都应该存储在一个新的变量中——我们将其命名为val。

同样,如果有两个或多个短语'search '或'search for '的实例,则只存储val中最近一个之后的内容。

例如:如果str = 'welcome I am search pie recipient search quick chili recipient '那么val将是'quick chili recipient '或如果str = '今天是78度搜索好天气和阳光换句话说,一个完美的一天搜索夏天什么时候结束'那么val将是'夏天什么时候结束'

试试这个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]);

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));

try

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

我不确定这是最好的方法,但它的工作,你可以尝试改变SRT值在jsbin: 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]

试试这个

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));