javascript、php关键字搜索函数的使用方法


Posted in Javascript onMay 29, 2018

javascript:

a. 代码:

/*
@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:

a. 代码:

<?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. 输出:

里呀?我可以过来找你玩吗?你怎么不回答我

Javascript 相关文章推荐
JS中图片缓冲loading技术的实例代码
Aug 29 Javascript
JS滚轮事件onmousewheel使用介绍
Nov 01 Javascript
js如何判断访问是来自搜索引擎(蜘蛛人)还是直接访问
Sep 14 Javascript
浅谈JS运算符&amp;&amp;和|| 及其优先级
Aug 10 Javascript
详解AngularJS如何实现跨域请求
Aug 22 Javascript
js中class的点击事件没有效果的解决方法
Oct 13 Javascript
jQuery插件之validation插件
Mar 29 jQuery
详解通过JSON数据使用VUE.JS
May 26 Javascript
关于jQuery.ajax()的jsonp碰上post详解
Jul 02 jQuery
详解JavaScript对数组操作(添加/删除/截取/排序/倒序)
Apr 28 Javascript
Vue实现input宽度随文字长度自适应操作
Jul 29 Javascript
node使用async_hooks模块进行请求追踪
Jan 28 Javascript
Vue路由切换时的左滑和右滑效果示例
May 29 #Javascript
Vue 组件传值几种常用方法【总结】
May 28 #Javascript
讲解vue-router之命名路由和命名视图
May 28 #Javascript
微信小程序实现图片上传功能
May 28 #Javascript
微信小程序上传图片功能(附后端代码)
Jun 19 #Javascript
讲解vue-router之什么是编程式路由
May 28 #Javascript
讲解vue-router之什么是嵌套路由
May 28 #Javascript
You might like
php生成的html meta和link标记在body标签里 顶部有个空行
2010/05/18 PHP
PHP无法访问远程mysql的问题分析及解决
2013/05/16 PHP
PHP开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
php分页函数示例代码分享
2014/02/24 PHP
浅析THINKPHP的addAll支持的最大数据量
2015/02/03 PHP
PHP操作路由器实现方法示例
2019/04/27 PHP
锋利的jQuery jQuery中的DOM操作
2010/03/21 Javascript
情人节之礼 js项链效果
2012/02/13 Javascript
javascript firefox 自动加载iframe 自动调整高宽示例
2013/08/27 Javascript
js this函数调用无需再次抓获id,name或标签名
2014/03/03 Javascript
javascript制作坦克大战全纪录(1)
2014/11/27 Javascript
JQuery控制radio选中和不选中方法总结
2015/04/15 Javascript
JavaScript实现的背景自动变色代码
2015/10/17 Javascript
window.open打开窗口被拦截的快速解决方法
2016/08/04 Javascript
bootstrap模态框远程示例代码分享
2017/05/22 Javascript
基于pako.js实现gzip的压缩和解压功能示例
2017/06/13 Javascript
使用Vue如何写一个双向数据绑定(面试常见)
2018/04/20 Javascript
jQuery插件Validation表单验证详解
2018/05/26 jQuery
[02:28]DOTA2英雄基础教程 灰烬之灵
2013/12/19 DOTA
[15:57]教你分分钟做大人:斧王
2014/10/30 DOTA
python循环监控远程端口的方法
2015/03/14 Python
Python中的连接符(+、+=)示例详解
2017/01/13 Python
git进行版本控制心得详谈
2017/12/10 Python
Python爬虫天气预报实例详解(小白入门)
2018/01/24 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
俄罗斯首家面向中国消费者的一站式购物网站:Wruru
2020/05/08 全球购物
资料员岗位职责
2013/11/17 职场文书
业务员岗位职责范本
2013/12/15 职场文书
高中运动会入场词
2014/02/14 职场文书
大学计划书范文800字
2014/08/14 职场文书
企业员工爱岗敬业演讲稿
2014/08/26 职场文书
法院干警四风问题个人对照检查材料思想汇报
2014/10/07 职场文书
2014年关工委工作总结
2014/11/17 职场文书
何玥事迹观后感
2015/06/16 职场文书
入党转正申请书范文
2019/05/20 职场文书
多属性、多分类MySQL模式设计
2021/04/05 MySQL