*字符串截取方法*/

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代码整理(三) 字符串处理的更多相关文章

  1. 谷歌浏览器内核Cef js代码整理(一)

    尊重作者原创,未经作者允许不得转载!作者:xtfnpgy,原文地址: https://www.cnblogs.com/xtfnpgy/p/9285359.html 一.js基础知识 <!--   ...

  2. 谷歌浏览器内核Cef js代码整理(二) 滚动条

    1.隐藏滚动条 document.documentElement.style.overflow = 'hidden';隐藏竖向滚动条:document.documentElement.style.ov ...

  3. webpages框架使用@razor语法向js代码传递Json字符串

    进入web开发时间太短,一个人尝试着做了几个初级项目,遇到了太多的困难.尽管不是学开发专业的,仅为爱好所以硬着头皮坚持了下来. 将遇到的问题记录下来,备查. 使用vs2015中asp.net razo ...

  4. 常用js代码整理、收集

    个人整理了一下个人常用到的一些js代码,以方便学习以及日后使用,或许有一些是个人之前从网上摘下来的,但是不记得是具体从哪里来的了,如果你看到有一段代码跟你的文章很相似甚至一样,请不要气愤,请告诉我,我 ...

  5. c#: WebBrowser控件注入js代码的三种方案

    聊做备忘. 假设js代码为: string jsCode = @"function showAlert(s) {{ alert('hello, world! ' + s);}}; showA ...

  6. 常用JS代码整理

    1: function request(paras) { 2: var url = location.href; 3: var paraString = url.substring(url.index ...

  7. 判断点击第几个按钮JS代码的三种方法

    方法一:使用下标实现<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...

  8. JS代码把JSON字符串转换为对象,计算对象的长度并把它转换为数字类型,把转换的值相加减

    Number(JSON.parse(rowObject.RenewalProperty).length)-1

  9. 【JS学习】-利用谷歌浏览器调试JS代码(转)

    谷歌浏览器是常用来调试JS代码的工具,本文主要介绍如何利用谷歌浏览器来调试JS代码,协助我们进行开发工作. 首先,打开谷歌浏览器,按快捷键F12或者ctrl+shift+j,就可以打开谷歌浏览器的开发 ...

随机推荐

  1. javascript 一些特殊的写法

    数组+数组: ["f", "o", "o"]+[] 执行结果:"f,o,o" ["f", " ...

  2. 31 位域、空类的sizeof值

    1 分析下列程序: #include<iostream> using namespace std; struct s { int x: 3; int y: 4; int z: 5; dou ...

  3. CCF关于公开NOIP复赛选手程序的通告

    为使参加NOIP复赛的选手能了解和保存其竞赛时编制的程序,并相互监督,CCF责成各省特派员在复赛后公开选手程序. 公布方式:以提高组和普及组分别为单位,通过网站或邮件等方式公开.以每个选手可以看到本省 ...

  4. EasyExcel导入工具(SpringMVC下使用)

    easyExcel:由阿里巴巴公司开发,由github托管 github上有详细使用文档 github地址:https://github.com/alibaba/easyexcel/blob/mast ...

  5. leetcode python 008

    ##  字符串转化为整数##  懒得自己做int0=63435435print(int(int0))

  6. 扯淡设计模式2:java,模板模式,

    模板模式: package com.dayuanit.service; public abstract class UserService { public void login(String use ...

  7. Qml和C++开发的学生信息管理软件一

    一个月前接触到了Qml,也做过一些练习,但只能实现动画和简单的布局功能,逻辑部分和数据处理很难上手,看到许多人将C++和结合起来,Qml负责界面设计,C++实现逻辑处理,但将C++注册到 Qml中一直 ...

  8. Problem E: 平面上的点——Point类 (V)

    Description 在数学上,平面直角坐标系上的点用X轴和Y轴上的两个坐标值唯一确定.现在我们封装一个“Point类”来实现平面上的点的操作. 根据“append.cc”,完成Point类的构造方 ...

  9. 根据ip获取地理信息

    function getIPLoc_sina($queryIP){    $url = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?form ...

  10. 自动化测试-8.selenium操作元素之键盘和鼠标事件

    前言 在前面的几篇中重点介绍了一些元素的定位方法,定位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...