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正确获取元素样式详解
Aug 07 Javascript
推荐一款jQuery插件模板
Jan 09 Javascript
js实现点击切换TAB标签实例
Aug 21 Javascript
js简单设置与使用cookie的方法
Jan 22 Javascript
基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合
Aug 11 Javascript
React Native验证码倒计时工具类分享
Oct 24 Javascript
实现div内部滚动条滚动到底部和顶部的代码
Nov 15 Javascript
JavaScript实现的超简单计算器功能示例
Dec 23 Javascript
js中怎么判断两个字符串相等的实例
Jan 17 Javascript
小程序的上传文件接口的注意要点解析
Sep 17 Javascript
JS中FileReader类实现文件上传及时预览功能
Mar 27 Javascript
处理canvas绘制图片模糊问题
May 11 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快速url重写更新版[需php 5.30以上]
2010/04/25 PHP
php中实现记住密码自动登录的代码
2011/03/02 PHP
PHP中几种常见的超时处理全面总结
2012/09/11 PHP
实例讲解PHP面向对象之多态
2014/08/20 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
2017/06/06 PHP
讨论javascript(一)工厂方式 js面象对象的定义方法
2009/12/15 Javascript
js 图片等比例缩放代码
2010/05/13 Javascript
Firebug入门指南(Firefox浏览器)
2010/08/21 Javascript
25个优雅的jQuery Tooltip插件推荐
2011/05/25 Javascript
javascript时间自动刷新实现原理与步骤
2013/01/06 Javascript
asp.net刷新本页面的六种方法总结
2014/01/07 Javascript
showModalDialog模态对话框的使用详解以及浏览器兼容
2014/01/11 Javascript
jQuery学习笔记之 Ajax操作篇(三) - 过程处理
2014/06/23 Javascript
jquery 取子节点及当前节点属性值
2014/07/25 Javascript
Javascript变量的作用域和作用域链详解
2015/04/02 Javascript
JavaScript创建对象的方式小结(4种方式)
2015/12/17 Javascript
connection reset by peer问题总结及解决方案
2016/10/21 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
微信小程序 获取二维码实例详解
2017/06/23 Javascript
jQuery实现为动态添加的元素绑定事件实例分析
2018/09/07 jQuery
jquery.pager.js分页实现详解
2019/07/29 jQuery
layui中select,radio设置不生效的解决方法
2019/09/05 Javascript
微信小程序点击view动态添加样式过程解析
2020/01/21 Javascript
2分钟实现一个Vue实时直播系统的示例代码
2020/06/05 Javascript
Python如何实现文本转语音
2016/08/08 Python
用python实现刷点击率的示例代码
2019/02/21 Python
Kali Linux安装ipython2 和 ipython3的方法
2019/07/11 Python
python实现代码统计器
2019/09/19 Python
Python Pandas对缺失值的处理方法
2019/09/27 Python
Python基于模块Paramiko实现SSHv2协议
2020/04/28 Python
简单说下OSPF的操作过程
2014/08/13 面试题
2014植树节活动总结
2014/03/11 职场文书
新闻传播专业求职信
2014/07/22 职场文书
大学生职业生涯规划大赛作品(精品)
2014/09/17 职场文书
详解CSS开发过程中的20个快速提升技巧
2021/05/21 HTML / CSS
css实现两栏布局,左侧固定宽,右侧自适应的多种方法
2021/08/07 HTML / CSS