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 相关文章推荐
使Ext的Template可以解析二层的json数据的方法
Dec 22 Javascript
js判断undefined类型示例代码
Feb 10 Javascript
javascript打开word文档的方法
Apr 16 Javascript
jQuery日程管理控件glDatePicker用法详解
Mar 29 jQuery
xmlplus组件设计系列之网格(DataGrid)(10)
May 05 Javascript
vue实现登录后页面跳转到之前页面
Jan 07 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
Jan 08 Javascript
security.js实现的RSA加密功能示例
Jun 06 Javascript
Js中使用正则表达式验证输入是否有特殊字符
Sep 07 Javascript
如何在JavaScript中谨慎使用代码注释
Jun 21 Javascript
JavaScript设计模式之观察者模式与发布订阅模式详解
May 07 Javascript
前端vue+elementUI如何实现记住密码功能
Sep 20 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
ExtJS与PHP、MySQL实现存储的方法
2010/04/02 PHP
php不允许用户提交空表单(php空值判断)
2013/11/12 PHP
PHP中addcslashes与stripcslashes函数用法分析
2016/01/07 PHP
总结对比php中的多种序列化
2016/08/28 PHP
JQuery+Ajax无刷新分页的实例代码
2014/02/08 Javascript
jquery无法设置checkbox选中即没有变成选中状态
2014/03/27 Javascript
DOM操作一些常用的属性汇总
2015/03/13 Javascript
Js实现无刷新删除内容
2015/04/29 Javascript
js跨域请求的5中解决方式
2015/07/02 Javascript
ANGULARJS中使用JQUERY分页控件
2015/09/16 Javascript
基于jQuery实现搜索关键字自动匹配功能
2020/03/26 Javascript
JavaScript+Java实现HTML页面转为PDF文件保存的方法
2016/05/30 Javascript
JS采用绝对定位实现回到顶部效果完整实例
2016/06/20 Javascript
基于BootStrap的Metronic框架实现页面链接收藏夹功能按钮移动收藏记录(使用Sortable进行拖动排序)
2016/08/29 Javascript
干货!教大家如何选择Vue和React
2017/03/13 Javascript
Angular.JS去掉访问路径URL中的#号详解
2017/03/30 Javascript
JavaScript实现的搜索及高亮显示功能示例
2017/08/14 Javascript
JS中常用的消息框总结
2018/02/24 Javascript
NodeJS安装图文教程
2018/04/19 NodeJs
微信小程序实现横向增长表格的方法
2018/07/24 Javascript
JavaScript new对象的四个过程实例浅析
2018/07/31 Javascript
详解python pandas 分组统计的方法
2019/07/30 Python
Python从文件中读取指定的行以及在文件指定位置写入
2019/09/06 Python
python torch.utils.data.DataLoader使用方法
2020/04/02 Python
使用Keras 实现查看model weights .h5 文件的内容
2020/06/09 Python
关于Theano和Tensorflow多GPU使用问题
2020/06/19 Python
Gap中国官网:美式休闲风服饰
2017/02/05 全球购物
美国豪华时尚女性精品店:Kirna Zabête
2018/01/11 全球购物
Shop Apotheke瑞士:您的健康与美容网上商店
2019/10/09 全球购物
波兰在线杂货店:Polski Koszyk
2019/11/02 全球购物
英文自荐信
2013/12/15 职场文书
董事长助理工作总结2015
2015/07/23 职场文书
2016重阳节红领巾广播稿
2015/12/18 职场文书
pandas取dataframe特定行列的实现方法
2021/05/24 Python
pytorch model.cuda()花费时间很长的解决
2021/06/01 Python
Lakehouse数据湖并发控制陷阱分析
2022/03/31 Oracle