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 IE和FF兼容性问题汇总
Feb 09 Javascript
JQuery 学习笔记 element属性控制
Jul 23 Javascript
jquery 锁定弹出层实现代码
Feb 23 Javascript
js日期对象兼容性的处理方法
Jan 28 Javascript
jquery移动节点实例
Jan 14 Javascript
jquery插件EasyUI中form表单提交实例分享
Jan 11 Javascript
Bootstrap3.0学习教程之JS折叠插件
May 27 Javascript
jQuery Easyui DataGrid点击某个单元格即进入编辑状态焦点移开后保存数据
Aug 15 Javascript
JavaScript 深层克隆对象详解及实例
Nov 03 Javascript
BootStrap框架个人总结(bootstrap框架、导航条、下拉菜单、轮播广告carousel、栅格系统布局、标签页tabs、模态框、菜单定位)
Dec 01 Javascript
JavaScript模板引擎Template.js使用详解
Dec 15 Javascript
js实现简单的倒计时
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
利用js调用后台php进行数据处理原码
2006/10/09 PHP
使用php完成常见的文件上传功能(推荐)
2017/01/13 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
PHP实现获取毫秒时间戳的方法【使用microtime()函数】
2019/03/01 PHP
jquery 元素相对定位代码
2010/10/15 Javascript
理解Javascript_09_Function与Object
2010/10/16 Javascript
使用Firebug对js进行断点调试的图文方法
2011/04/02 Javascript
jQuery ajax 路由和过滤器使用说明
2011/08/02 Javascript
浅析document.createDocumentFragment()与js效率
2013/07/08 Javascript
js父窗口关闭时子窗口随之关闭完美解决方案
2014/04/29 Javascript
JS判断客服QQ号在线还是离线状态的方法
2015/01/13 Javascript
BOOTSTRAP时间控件显示在模态框下面的bug修复
2015/02/05 Javascript
avalonjs实现仿微博的图片拖动特效
2015/05/06 Javascript
jquery解析json格式数据的方法(对象、字符串)
2015/11/24 Javascript
jQuery 获取遍历获取table中每一个tr中的第一个td的方法
2016/10/05 Javascript
vue-router中scrollBehavior的巧妙用法
2018/07/09 Javascript
详解如何制作并发布一个vue的组件的npm包
2018/11/10 Javascript
layui 地区三级联动 form select 渲染的实例
2019/09/27 Javascript
vue的路由映射问题及解决方案
2019/10/14 Javascript
vue data引入本地图片的两种方式小结
2019/11/13 Javascript
ES2020 新特性(种草)
2020/01/12 Javascript
[24:42]VP vs TNC Supermajor小组赛B组 BO3 第三场 6.2
2018/06/03 DOTA
linux系统使用python监测网络接口获取网络的输入输出
2014/01/15 Python
python使用PyFetion来发送短信的例子
2014/04/22 Python
Python的面向对象思想分析
2015/01/14 Python
通过Python来使用七牛云存储的方法详解
2015/08/07 Python
Python中datetime模块参考手册
2017/01/13 Python
Django学习之文件上传与下载
2019/10/06 Python
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2012/04/17 面试题
初中数学教学反思
2014/01/16 职场文书
2014自荐信的写作技巧
2014/01/28 职场文书
幼儿园小班家长寄语
2014/04/02 职场文书
基层党员群众路线教育实践活动个人对照检查材料思想汇报
2014/10/05 职场文书
小学体育教学随笔
2015/08/14 职场文书
描写九月优美句子(39条)
2019/09/11 职场文书
自定义函数实现单词排序并运用于PostgreSQL(实现代码)
2021/04/22 PostgreSQL