谷歌浏览器内核Cef js代码整理(三) 字符串处理
*字符串截取方法*/
var s="abc_def[ghi]jk[i]";
var temp;
function CopyFromStr(str_source,str_key, bl_containKey)
{
if(str_source.indexOf(str_key)==-1)
{ return "";}
else
{
if(bl_containKey)
{ return str_source.substr(str_source.indexOf(str_key), str_source.length - str_source.indexOf(str_key) + 1);}
else
{ return str_source.substr(str_source.indexOf(str_key)+str_key.length, str_source.length - str_source.indexOf(str_key)+str_key.length + 1);}
}
}
function CopyToStr(str_source,str_key,bl_containKey)
{
if(str_source.indexOf(str_key)==-1)
{ return "";}
else
{
if(bl_containKey)
{ return str_source.substr(0, str_source.indexOf(str_key) + str_key.length);}
else
{ return str_source.substr(0, str_source.indexOf(str_key) );}
}
}
function CopyStr(str_source,str_start,str_end,bl_containStartEnd)
{
var i,j;
var tmp;
tmp = str_source;
i = tmp.indexOf(str_start);
if(i==-1) {return "";}
tmp = CopyFromStr(tmp,str_start,false);
j = tmp.indexOf(str_end);
if(j==-1) {return "";}
if(bl_containStartEnd)
{return str_start + tmp.substr(0, j) + str_end;}
else
{return tmp.substr(0,j);}
}
function CopyStrEx(str_source, str_key, str_start,str_end,bl_containStartEnd)
{
var tmp = str_source;
if((tmp.indexOf(str_key)==-1) ||
(tmp.indexOf(str_start)==-1) ||
(tmp.indexOf(str_end)==-1) )
{return "aaa";}
else
{
tmp = CopyFromStr(tmp,str_key,false);
if(bl_containStartEnd)
{return CopyStr(tmp,str_start,str_end,true);}
else
{return CopyStr(tmp,str_start,str_end,false);}
}
}
function RightFromStr(str_source,str_key,bl_containStartEnd)
{
if(str_source.indexOf(str_key)==-1)
{ return "";}
else
{
while(str_source.indexOf(str_key)>-1)
{str_source = CopyFromStr(str_source,str_key,false);}
if(bl_containKey)
{ return str_key+str_source;}
else
{ return str_source;}
}
}
function RightFromStr(str_source,str_key,bl_containStartEnd)
{
if(str_source.indexOf(str_key)==-1)
{ return "";}
else
{
while(str_source.indexOf(str_key)>-1)
{str_source = CopyFromStr(str_source,str_key,false);}
if(bl_containStartEnd)
{ return str_key+str_source;}
else
{ return str_source;}
}
}
/*调用方法:*/
temp=CopyFromStr(s, '[gh', false);alert(temp);
temp=CopyToStr(s, '[gh', false);alert(temp);
temp=CopyStr(s, '_', '[gh', false);alert(temp);
temp=CopyStrEx(s, '_', '[', ']', false);alert(temp);
temp=RightFromStr(s, '[', false);alert(temp);
谷歌浏览器内核Cef js代码整理(三) 字符串处理的更多相关文章
- 谷歌浏览器内核Cef js代码整理(一)
尊重作者原创,未经作者允许不得转载!作者:xtfnpgy,原文地址: https://www.cnblogs.com/xtfnpgy/p/9285359.html 一.js基础知识 <!-- ...
- 谷歌浏览器内核Cef js代码整理(二) 滚动条
1.隐藏滚动条 document.documentElement.style.overflow = 'hidden';隐藏竖向滚动条:document.documentElement.style.ov ...
- webpages框架使用@razor语法向js代码传递Json字符串
进入web开发时间太短,一个人尝试着做了几个初级项目,遇到了太多的困难.尽管不是学开发专业的,仅为爱好所以硬着头皮坚持了下来. 将遇到的问题记录下来,备查. 使用vs2015中asp.net razo ...
- 常用js代码整理、收集
个人整理了一下个人常用到的一些js代码,以方便学习以及日后使用,或许有一些是个人之前从网上摘下来的,但是不记得是具体从哪里来的了,如果你看到有一段代码跟你的文章很相似甚至一样,请不要气愤,请告诉我,我 ...
- c#: WebBrowser控件注入js代码的三种方案
聊做备忘. 假设js代码为: string jsCode = @"function showAlert(s) {{ alert('hello, world! ' + s);}}; showA ...
- 常用JS代码整理
1: function request(paras) { 2: var url = location.href; 3: var paraString = url.substring(url.index ...
- 判断点击第几个按钮JS代码的三种方法
方法一:使用下标实现<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...
- JS代码把JSON字符串转换为对象,计算对象的长度并把它转换为数字类型,把转换的值相加减
Number(JSON.parse(rowObject.RenewalProperty).length)-1
- 【JS学习】-利用谷歌浏览器调试JS代码(转)
谷歌浏览器是常用来调试JS代码的工具,本文主要介绍如何利用谷歌浏览器来调试JS代码,协助我们进行开发工作. 首先,打开谷歌浏览器,按快捷键F12或者ctrl+shift+j,就可以打开谷歌浏览器的开发 ...
随机推荐
- 数位dp讲解及模板
转载自:传送门 数位DP其实是很灵活的,所以一定不要奢求一篇文章就会遍所有数位DP的题,这一篇只能是讲清楚一种情况,其他情况遇到再总结,在不断总结中慢慢体会这个思想,以后说不定就能达到一看到题目就能灵 ...
- Sockets使用
服务端 using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.Threading ...
- go web framework gin group api 设计
假如让你来设计group api, 你该怎么设计呢? group api 和普通api的区别在于前缀不同,如果group api的版本为v1.0 那么相对应的url为/v1.0/xxx, 如果是普通a ...
- setTimeout中调用this
项目案例: 左右切换tab容器的动作,封装到一个对象中: var slidingComp = { startX : 0 , moveX : 0 , ...... start : function(e) ...
- resful
一个完整的node resful api 一个更完整的项目 介绍
- asp.net 网页跳转的几种常用方法
Response.Redirect("http://www.baidu.com",false); 后面的bool值为是否停止执行当前页.跳转向新的页面,原窗口被代替.浏览器中的UR ...
- 移动web总结
Meta标签: 1 <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-sc ...
- 解决Yii2中刷新网页时验证码不刷新的问题
解决Yii2中刷新网页时验证码不刷新的问题 [ 2.0 版本 ] ljfrocky 2015-05-30 19:39:00 1304次浏览 5条评论 10110 在Yii2框架中,如果在表单中使用 ...
- Python全栈之路----数据类型—列表
1.列表是一个数据的集合,集合内可以放任何数据类型,可对集合进行方便的增删改查操作.列表里面的数可以重复. L1 = [ ] #定义空列表 L2 = [ 'a' , 'b' , 'c' , 'd' ] ...
- 网络编程-----IO
IO模型介绍 阻塞IO 非阻塞 多路复用 异步 IO模型比较分析 selectors 阻塞IO:之前写的所有的socket,recv,accput都是 阻塞原理: 其实多数时间多用到了等待数据那里. ...