3

文字列内の特定のフレーズを検索し、その後のすべてを取得して新しい変数に格納する最善の方法を考えました。たとえば...

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

'search' または 'search for' の後のすべて、この場合は 'Jim carrey' を新しい var に格納する必要があります。これを val と呼びましょう。

また、'search' または 'search for' という語句が 2 つ以上ある場合は、最新のものより後のものだけを val に格納します。

例: str = 'ようこそ、パイのレシピを検索します クイック チリのレシピを検索します' の場合、val は 'クイック チリのレシピを検索します' または str = '今日は 78 度ですwhen does summer end' の場合、val は 'when does summer end' になります。

4

5 に答える 5

6

この正規表現を試してください:

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]);
于 2013-03-21T04:52:24.927 に答える
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

于 2013-03-21T04:52:11.310 に答える
1

Legendin Makingの答えは、先頭にスペースがあるフレーズを返し、検索または検索後にすべてを返すには、これを使用します

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));
于 2013-03-21T04:53:04.480 に答える
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]
于 2013-03-21T04:40:23.090 に答える
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));
于 2013-03-21T04:42:31.390 に答える