php聊天机器人源码,简单聊天机器人源码
import win.ui;
import fsys;
import string.template;
/*DSG{{*/
winform = win.form(text="机器人小冰";right=573;bottom=374;max=false)
winform.add(
Robot={cls="static";left=20;top=6;right=21;bottom=7;hide=1;transparent=1;z=4};
edit={cls="edit";left=8;top=306;right=566;bottom=369;dl=1;dr=1;dt=1;edge=1;multiline=1;z=2};
plus={cls="plus";left=-2;top=0;right=577;bottom=86;bgcolor=15780518;z=1};
plus2={cls="plus";left=12;top=5;right=87;bottom=81;background="\res\头像.jpg";z=6};
richedit={cls="richedit";left=8;top=95;right=566;bottom=303;dl=1;dr=1;dt=1;edge=1;link=1;multiline=1;vscroll=1;wrap=1;z=3};
yuyin={cls="static";left=20;top=309;right=69;bottom=327;hide=1;transparent=1;z=5}
)
/*}}*/
if(!io.exist("\reply")){string.save("\reply","机器人名字"+'\n'+"小冰"+ '\n'); }
if(!io.exist("\myreply")){string.save("\myreply","这里是提问记录"+ '\n'); }
Handle=function(char){
var CustomReply = string.load("\reply"); //加载自定义词库
var Reply = string.load("\res\reply");
SplitChar = string.split(char, "|") //以|符号拆分聊天信息
if (SplitChar) { //如果拆分文本成功代表这一句是命令信息
if (SplitChar[1] = "教学") { //教学命令
new =SplitChar[2] + '\n' +SplitChar[3] + '\n';
string.save("\reply", new, true) //追加新词到自定义词库
return "太好了!我又学会新词了^_^" ; //中断
}
if (SplitChar[1] = "取名") { //教学命令
Robotname=string.replace(CustomReply,Robot,SplitChar[2]);
Newname='\r\n'+SplitChar[2];
if(!机器人名字=" "){
string.save("\reply",Robotname);
return "好的!以后我就叫"+SplitChar[2];};
else{
Newname="机器人名字"+Newname+'\r\n'
string.save("\reply",Newname,true)
return "太好了!我有新名字了^_^";
}
}
}
if(char!="机器人名字"){//记录提问内容
Newchar = char + '\n'
string.save("\myreply", Newchar, true); //追加保存提问信息
}
//搜索自建词库
var LoadReply = string.split(CustomReply, '\n'); //拆分自定义词库
min,max = table.range(LoadReply); //取词库最大行数
for (i = 1; max; 1) {
var MatchReply = string.match(LoadReply[i], char); //逐行匹配词库
if (MatchReply) { //如果匹配成功
if (i % 2) { //判断行数是否为奇数
m = i + 1; //m数值等于第i行的下一行
return LoadReply[m]; //返回答案
}
}
}
//搜索内置词库
var LoadReply = string.split(Reply, '\n'); //分行词库文件
min, max = table.range(LoadReply); //取词库行数
for (i = 1; max; 1) {
var MatchReply = string.match(LoadReply[i], char); //逐行匹配词库
if (MatchReply) { //如果匹配成功
if (i % 2) { //判断行数是否为奇数
n = i + 1//n数值等于第i行的下一行
return LoadReply[n]; //返回答案
}
}
}
//搜索词库失败处理
var Problem = string.load("\myreply"); //读取提问记录
var LoadProblem = string.split(Problem, '\n'); //分行提问记录
min,max = table.range(LoadProblem); //取提问记录行数
for (i = 1; max; 1) {
var MatchProblem = string.match(LoadProblem[i], char); //逐行提问记录
if (MatchProblem) { //如果匹配成功
if (i > 5) { //如果同样的问题提问超过5次
return "有些问题你问了我不下五次了,要不你教教我吧^_^";
}
}
}
return "这个问题我不会,要不你教我吧^_^";
}
winform.edit.oncommand = function(id, event) {
import key;
if (key.getStateX("Enter")) {
str = string.split(winform.edit.text, '\r\n');
if (str[2] = "") {
winform.richedit.appendText("我说:" + str[1] + '\n');
winform.richedit.appendText(Robot+ "说:"+Handle(str[1]) + '\n');
}
winform.edit.text = "";
}
}
winform.richedit.color= gdi.RGB(0xff,0000,0);
if(Handle("机器人名字")){
Robot = Handle("机器人名字") ; //设置机器人名字
winform.text = "与 " + Robot+ " 聊天";//设置对话框名称
winform.richedit.appendText("嗨!又见面了!" + '\n');
}
else {
Robot="小丫子";
winform.richedit.appendText("主人,你可以训练我怎么跟你更好的聊天哦^_^" + '\n');
winform.richedit.appendText("输入教学|这里是提问|这里是回答" + '\n');
winform.richedit.appendText("输入取名|这里写我的新名字就可以啦" + '\n');
}
winform.show()
return win.loopMessage();
php聊天机器人源码,简单聊天机器人源码相关推荐
- php聊天功能_php实现简单聊天功能
搜索热词 1.创建聊天消息表,其表的字段有消息内容,发送时间和发送者的名称: CREATE TABLE `guanhui`.`message` ( `id` INT(10) NOT NULL AUTO ...
- 计算机网络课程设计聊天,计算机网络课程设计-简单聊天程序.doc
计算机网络课程设计-简单聊天程序 黔南民族师范学院 计算机科学系 计算机网络课程设计报告 课题名称: 简单聊天程序 姓 名: 学 号: 专业班级: 系 (院): 计算机科学系 指导老师: 设计时间: ...
- java 简单聊天室_java实现简单聊天室单人版
本文实例为大家分享了java实现简单聊天室的具体代码,供大家参考,具体内容如下 先整理下思路: 1.创建一个通信服务端,传入端口号和相关的流后等待客户端连接,并初始化图形界面. 2.创建一个JFram ...
- node.js android 聊天,Node.js实现简单聊天服务器
使用Nodejs是如此简单的实现了一个简单的聊天服务器 实现代码如下: var net = require('net'); var chatServer = net.createServer(),cl ...
- 小程序源码:聊天斗图微信表情包-多玩法安装简单
这是一款微信表情包小程序 支持自定义搜索,另外支持长按发送给好友 当然也支持长按保存表情包 这个源码比较单调一点,没有那么多的分类 小程序源码下载地址: 小程序源码:聊天斗图微信表情包-多玩法安装简单 ...
- 【Tensorflow+自然语言处理+LSTM】搭建智能聊天客服机器人实战(附源码、数据集和演示 超详细)
需要源码和数据集请点赞关注收藏后评论区留言私信~~~ 一.自然语言处理与智能 自然语言处理技术是智能客服应用的基础,在自然语言处理过程中,首先需要进行分词处理,这个过程通常基于统计学理论,分词的精细化 ...
- 做简单的android 软件推荐,Android_适用于Android开发的简单聊天软件,适用于android 开发。是一个简 - phpStudy...
适用于Android开发的简单聊天软件 适用于android 开发.是一个简单的聊天软件,包括知识点,各个控件的运用(ExpandableListView,ViewPager,Spinner,Line ...
- 游戏陪玩系统源码中聊天室内礼物系统的实现
游戏陪玩系统源码中聊天室的礼物系统,第一步用户看到的无外乎都是礼物的列表界面 纵观主流聊天室的礼物列表应该都是使用UICollectionView实现的,所以我也不例外,下面就是各种撸代码.效果如下 ...
- 家园垃圾分类php源码,PHP垃圾分类设备机器类企业网站整站源码(带手机移动端) dedecms内核...
[温馨提示]源码包解压密码:www.youhutong.com 资源描述 PHP垃圾分类设备机器类企业网站整站源码(带手机移动端) dedecms内核 源码介绍: 采用织梦最新内核开发的模板,该模板属 ...
- GCC源码分析(十三) — 机器描述文件
版权声明:本文为CSDN博主「ashimida@」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/lidan1 ...
最新文章
- 关系型数据库 和 非关系型数据对比 以及 MySQL与Oracle对比
- .net程序调试一:快速定位异常
- 豪斯荷尔德变换 matlab,隐式QR法求实矩阵的全部特征值matlab实现
- 基于bert的语义匹配_构建基于BERT的语义搜索系统…针对“星际迷航”
- effective mysql之备份与恢复_Effective MySQL之备份与恢复
- 这篇看完我得理解ES6中中常见语法
- 为什么objc_msgSend必须用汇编实现
- 散列表删除一个元素c语言,分享一个简单高效的哈希表C语言实现
- Retrofit2源码分析(一)
- X云微专业-功能测试需求分析
- ROS的学习(十)rqt_console和roslaunch
- 页面中,通过css设置文本不能被选中
- 智慧树工业机器人测试答案_智慧树_工业机器人技术基础_答案章节单元测试答案...
- Excel如何快速生成二维码图片?
- ENVI提取植被指数(NDVI)的两种方法
- 股权比例的3种黄金分割线
- Java+PDFBox将PDF转成图片
- oracle怎么加上双引号,Oracle中的双引号的作用
- metasploit的SET的Credential Harvester Attack Method
- 总结一些IT项目经理的管理方法与经验
热门文章
- Hadoop-学习笔记-黑马程序员
- SwitchHosts的安装及软件使用
- Win7系统开机动画设置
- android adb sdk下载地址,Android SDK 下载和安装
- Linux运维基础知识——开发人员可以掌握的常识
- 华为这份关于专利的会议纪要,都说了什么?(内含华为十大发明彩蛋)
- js_单例模式制作无限弹窗(3s内销毁)
- 计算机打印中 纸张不出来,菜鸟发货平台打印机不出纸怎么办?打印机纸张尺寸如何设置?...
- Webservice接口开发简单例子
- 1.实验:删除CentOS6下/boot/vmlinuz文件修复之