js 实现字符串的查找和替换
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style>
p,ul,li{margin:0;padding:0;}
li{list-style:none;}
#mainConent{position:relative;top:0;left:0;}
#mainConent p{width:400px;height:200px;border:10px solid #CCCCCC;background:#fff;}
#mainConent ul{width:70px;position:absolute;top:0;left:430px;}
#mainConent li{background:#ccc;margin-top:1px;text-align:center;color:#fff;}
#mainConent li#active{background:#999999;}
.default{display:none;}
.showDefault{display:block;} #expainDiv{width:400px;height:100px;border:10px solid #FF33CC; position:relative;top:10px;left:0; display:none;}
#expainDiv span{position:absolute;top:0;right:6px;font-size:24px;}
#expainDiv ul{position:absolute;top:15px;left:10px;width:350px;height:20px;border-bottom:1px solid #FF0000;}
#expainDiv li{position:absolute;width:50px;height:20px;text-align:center;}
#find{left:10px;}
#replace{left:61px;}
#findDiv,#replaceDiv{position:absolute;left:10px;top:50px;}
#findText,#replaceSrcText,#replaceDesText{border:1px solid #FF6600;}
#textBg{background:#FFFF00;} </style>
<script>
window.onload = function(){
var mainLi = document.getElementById('mainConent').getElementsByTagName('li');
var expainDiv = document.getElementById('expainDiv');
var findLi = document.getElementById('find');
var replaceLi = document.getElementById('replace');
var findText = document.getElementById('findText');
var findInput = document.getElementById('findDiv').getElementsByTagName('input');
var contentP = document.getElementsByTagName('p')[0];
var replaceInput = document.getElementById('replaceDiv').getElementsByTagName('input');
var deleteSpan = document.getElementById('expainDiv').getElementsByTagName('span')[0]; var onOff = true; mainLi[0].onclick = function(){
if(onOff){
mainLi[1].className = 'showDefault'; /* 直接用class替换*/
mainLi[2].className = 'showDefault';
mainLi[0].innerHTML = '闭合';
}else{
mainLi[1].className = 'default';
mainLi[2].className = 'default';
mainLi[0].innerHTML = '展开';
expainDiv.style.display = 'none';
}
onOff = !onOff;
};
mainLi[1].onOff = 1;
mainLi[2].onOff = 2;
mainLi[1].onclick = mainLiFun;
mainLi[2].onclick = mainLiFun;
findLi.onOff = 1;
replaceLi.onOff = 2;
findLi.onclick = mainLiFun;
replaceLi.onclick = mainLiFun;
/*右上角的删除x*/
deleteSpan.onclick = function(){
expainDiv.style.display = 'none';
}; /*查找*/
findInput[1].onclick =function(){
var strfind = findInput[0].value;
var contentStr = contentP.innerHTML;
if(!strfind){
alert("请输入查找的字符串!");
return;
}else if(contentStr.indexOf(strfind) == -1){
alert("输入的信息找不到!");
return;
}
contentP.innerHTML = contentStr.split(strfind).join('<span id="textBg">'+strfind+'</span>');
}; /*替换*/
replaceInput[2].onclick = function(){
var replaceSrc = replaceInput[0].value;
var replaceDes = replaceInput[1].value;
var contentStr = contentP.innerHTML;
if(!replaceSrc){
alert("请输入要被替换的文字!");
return;
}else if(contentStr.indexOf(replaceSrc) == -1){
alert("输入有误,找不到 "+replaceSrc+" !");
return;
}else if(!replaceDes){
if(!confirm("确定删除字符串 "+replaceSrc+" 吗?")) return;
}
contentP.innerHTML = contentStr.split(replaceSrc).join('<span id="textBg">'+replaceDes+'</span>');
};
}; function mainLiFun(){
var findLi = document.getElementById('find');
var replaceLi = document.getElementById('replace');
var findDiv = document.getElementById('findDiv');
var replaceDiv = document.getElementById('replaceDiv');
var findInput = document.getElementById('findDiv').getElementsByTagName('input');
var replaceInput = document.getElementById('replaceDiv').getElementsByTagName('input'); if(this.onOff ==1){
hiddenExpainDivLiFun(replaceLi);
expainDivLiFun(findLi);
replaceDiv.style.display = 'none';
findDiv.style.display = 'block';
findInput[0].value = "";
}else if(this.onOff ==2){
hiddenExpainDivLiFun(findLi);
expainDivLiFun(replaceLi);
findDiv.style.display = 'none';
replaceDiv.style.display = 'block';
replaceInput[0].value = "";
replaceInput[1].value = "";
}
} function expainDivLiFun(id){
expainDiv.style.display = 'block';
findDiv.style.display = 'block';
id.style.background = '#FF0000';
id.style.color = '#fff';
} function hiddenExpainDivLiFun(id){
expainDiv.style.display = 'block';
findDiv.style.display = 'block';
id.style.background = '';
id.style.color = '#000';
} </script>
</head>
<body>
<div id="mainConent">
<p>4消息类型包括3种1由模块发送的动作类 显示类命令执行消息配置变更任务会接受到命令字符串,
监听任务会将字符串放到延迟发送缓冲区中,目的是防止产生大量的trap。在短时间内相同的动作,只发送一次
2有cfg模块发送的配置变更消息配置变更任务会主动与时上一下保存的配置进行比较找出a添加,删除和变更的命令,将上述命令字符通过命令转换层转换成可执行的命令。放入发送队列。3命令发送消息,每2秒钟执行,目的是将发送队列中的消息,组成trap 发送给告警模块。
</p>
<ul>
<li id="active">展开</li>
<li class ="default">查找</li>
<li class="default">替换</li>
</ul>
</div>
<div id="expainDiv">
<span>x</span>
<ul>
<li id="find">查找</li>
<li id="replace">替换</li>
</ul>
<div id="findDiv">
<input type="text" id="findText" />
<input type="button" value="查找"/>
</div>
<div id="replaceDiv">
<input type="text" id="replaceSrcText" />
<input type="text" id="replaceDesText" />
<input type="button" value="替换"/>
</div>
</div>
</body>
</html>
js 实现字符串的查找和替换的更多相关文章
- JS实现文本中查找并替换字符
JS实现文本中查找并替换字符 效果图: 代码如下,复制即可使用: <!DOCTYPE html><html> <head> <style type=" ...
- sh_17_字符串的查找和替换
sh_17_字符串的查找和替换 hello_str = "hello world" # 1. 判断是否以指定字符串开始 print(hello_str.startswith(&qu ...
- C#入门篇6-11:字符串操作 查找与替换
#region 查找与替换 public class C4 { //查找 public static void StrFind() { //目标字符串 string str1 = "~awe ...
- [LeetCode] Find And Replace in String 在字符串中查找和替换
To some string S, we will perform some replacement operations that replace groups of letters with ne ...
- 实现字符串的查找和替换 分类: c/c++ 2014-10-09 22:33 469人阅读 评论(0) 收藏
在字符串中查找目标字符串并将其替换为指定字符串,返回替换的次数.接口为 int find_str_replace(char *&str,const char *find_str,const c ...
- vim /vi中对字符串的查找并替换
vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询. :s/vivian/sky/ 替换当前行第一个 vivian ...
- js中字符串和正则相关的方法
正则表达式对象常用方法 test() 检索字符串中指定的值.返回 true 或 false. var str="Embrace You" var r1=/you/i.test(st ...
- js中字符串全部替换
废话不多说,直接发结果 在js中字符串全部替换可以用以下方法: str.replace(/需要替换的字符串/g,"新字符串") 比如: "yyyy-MM-dd-hh-mm ...
- JS 正则查找与替换
JS正则查找与替换 一.前提/背景 今天遇到个问题,需要替换字符串中部分字符,这些字符相对整个字符串而言,与其他子字符串类似,无法单独提出:重要的是,该字符串是动态的生成的,就像我们日常看到的网页Ur ...
随机推荐
- Oracle 10G 服务端的安装
安装依赖包yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-l ...
- 前后端分离,使用nginx解决跨域问题
前端:vue.js+nodejs+webpack 后台:SpringBoot 反向代理服务器:nginx 思想:将前端代码打包,让nginx指向静态资源,nginx对后台请求进行转发. 1.将前端代码 ...
- Nginx笔记总结十三:nginx 正向代理
server { listen ; location / { resolver 202.106.0.20 202.106.119.116; resolver_timeout 30s; proxy_pa ...
- 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(python语言)
# 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? # 斐波那契数列:0,1,1,2,3,5,8,13, ...
- 吴裕雄--天生自然 PYTHON数据分析:医疗数据分析
import numpy as np # linear algebra import pandas as pd # data processing, CSV file I/O (e.g. pd.rea ...
- 【转载】python3安装scrapy之windows32位爬坑
python3安装scrapy之windows32位爬坑 原创 2016年11月06日 01:38:08 标签: scrapy / windows / python / 开源框架 / 网络爬虫 早 ...
- Python---3基础输入方法
一字符串写法 1.单一字符串 用print()在括号中加上字符串,就可以向屏幕上输出指定的文字.比如输出'hello, world',用代码实现如下: >>> print('hell ...
- Presto单机/集群模式安装笔记
Presto单机/集群模式安装笔记 一.安装环境 二.安装步骤 三.集群模式安装: 3.1 集群模式修改配置部分 3.1.1 coordinator 节点配置. Node172配置 3.1.2 nod ...
- Java编程Tips
原文: Java编程中"为了性能"尽量要做到的一些地方 作者: javatgo 最近的机器内存又爆满了,除了新增机器内存外,还应该好好review一下我们的代码,有很多代码编写过于 ...
- 01.JS块级作用域与let
1.块级作用域 什么是: 在一个代码块(括在一对花括号中的一组语句)中定义的所需变量(与let配合使用)并在代码块的外部是不可见的. 为什么: 在ES6之前,函 ...