/*
@desc:js搜索函数,可用于关键字匹配
@param key 关键字
@param str 要搜索的字符串
@return out 匹配关键字前后出现的位置
*/
function search(key,str){
var min = 0
var max = str.length
var index = str.indexOf(key)
var left = index - 10
var right = index + 10
if(left<min){
left = min
}
if(right>max){
right = max
}
var out = str.slice(left,right)
return out
}
b. 测试:
var str = ‘你好吗?你在哪里呀?我可以过来找你玩吗?你怎么不回答我呀!‘
var key = ‘玩‘
var res = search(key,str)
console.log(res)
c. 输出:
里呀?我可以过来找你玩吗?你怎么不回答我
<?php
/*
@desc:php搜索函数,可用于关键字匹配
@param key 关键字
@param str 要搜索的字符串
@return out 匹配关键字前后出现的位置
*/
function search($key,$str){
$min = 0;
$max = mb_strlen($str);
$index = mb_strpos($str,$key);
$left = $index - 10;
$right = $index + 10;
if($left<$min){
$left = $min;
}
if($right>$max){
$right = $max;
}
$len = $right - $left;
$out = mb_substr($str,$left,$len);
return $out;
}
b. 测试:
$str = ‘你好吗?你在哪里呀?我可以过来找你玩吗?你怎么不回答我呀!‘;
$key = ‘玩‘;
$res = search($key,$str);
echo $res;
c. 输出:
里呀?我可以过来找你玩吗?你怎么不回答我
原文地址:http://blog.51cto.com/12173069/2121272