javascript中正则表达式反向引用示例介绍_正则表达式

最近遇到一个需求,传入一个字符串,每三个字符插入一个空格

例:

传入abcd1234

输出 abc d12 34

思考了一下,准备写一个函数如下

复制代码 代码如下:

function appendSpace(s)
{
var length = s.length;
var result = "";
var last = 0;
for(var i = 3;i<=length;i=i+3,last = last+3)
{
result = result+s.substring(i-3,i)+" ";
}
result = result+s.substring(last,length);
return result;
}

感觉这个函数有点屌丝。。。

于是换了replace()正则表达式替换方法

复制代码 代码如下:

/*
*$1表示引用匹配规则中第一对括号(此处为"(.{3})")命中的文本
*不加括号的时候会直接输出$1
*/
function insertSpace(s)
{
var result =s.replace(/(.{3})/g,"$1 ");
return result;
}

运行效果如图

时间: 2024-09-18 12:59:01

javascript中正则表达式反向引用示例介绍_正则表达式的相关文章

javascript中正则表达式反向引用示例介绍

 这篇文章主要介绍了javascript中正则表达式反向引用,需要的朋友可以参考下 最近遇到一个需求,传入一个字符串,每三个字符插入一个空格    例:    传入abcd1234    输出 abc d12 34    思考了一下,准备写一个函数如下   代码如下: function appendSpace(s)  {  var length = s.length;  var result = "";  var last = 0;  for(var i = 3;i<=lengt

javascript 中that的含义示例介绍_基础知识

你可能会发现别人写的代码中有这么一句:var that = this;,这代表什么意思呢? 在javascript中,this代表的是当前对象. var that=this就是将当前的this对象复制一份到that变量中.这样做有什么意义呢? 复制代码 代码如下: $('#zhetenga').click(function(){ //this是被点击的#zhetenga var that = this; $('.zhetenga').each(function(){ //this是.zheten

正则表达式中的反向预搜索(上)_正则表达式

在以前的应用,大多是应用正向预搜索情况.也就是说,在查找内容的右面有特定的内容限定,例如下面的例子: 复制代码 代码如下: var str3 = 'CPU: Intel Core2 5200; Memory: 2G;OS: Ubuntu 9.04'; var reg3 = /Memory\:\s+(.*(?=\;OS\:))/gim; str3.match(reg3); alert(RegExp.$1); //结果是2G (.*(?=\;OS\:) 就是典型的正向预搜索,只有右面内容是";OS:

php正则表达式中贪婪与非贪婪介绍_正则表达式

一.贪婪与非贪婪 什么叫贪婪,比如说要从字符串中<td>面包一</td><td>面包二</td>吃面包,本来你只可以吃面包一,可是你贪心,于是就把第一个<td>到最后一个</td>里面的两个面包取出来了,你想多吃点,非贪婪也就是你不贪吃了,就只吃面包一. 我们来看看正则里面是怎么贪婪的 <?php $str = '<td>面包一</td><td>面包二</td>'; preg_ma

php正则表达式的模式修正符和逆向引用使用介绍_正则表达式

正则表达式的匹配先后顺序: 1.模式单元 2.重复匹配 ? * + {} 3.边界限定 ^ $ b B 4.模式选择 | 模式修正符: 模式修正符是标记在整个模式之外的. i :模式中的字符将同时匹配大小写字母. m :字符串视为多行. s :将字符串视为单行,换行符作为普通字符. x :将模式中的空白忽略. A :强制仅从目标字符串的开头开始匹配. D :模式中的美元元字符仅匹配目标字符串的结尾. U :匹配最近的字符串. PHP与正则表达式中的模式修正符 下面列出了当前在 PCRE 中可能使

Javascript中的delete操作符详细介绍_基础知识

一.变量 说到javascript中的delete操作符,还是首先要搞清楚javascript中的变量和属性之间的关系. javascript中,变量和对象属性关系非常微妙,甚至可以很多时候会被等同起来,因为 javascript 在执行脚本之前会创建一个global对象,在浏览器中就是window对象,所有的全局变量都是这个global对象的属性,执行函数时也会创建一个activation对象,所有的局部变量都是这个activation对象的属性.这些可以大家可以去了解一下javascript

javascript中字符串的定义示例代码_基础知识

复制代码 代码如下: <html> <head> <title>javascript中字符串的定义</title> <script> //定义字符串 //第一种 var str = new Array(); alert(str);//空字符 //第二种 var str2 = new Array("hello"); alert(str2);//hello //第三种 /* String 对象可用字符串文字显式创建. 用这种方法创

Javascript中引用示例介绍_基础知识

在Javascript脚本中,参数的引用原则:引用的参数内部(如属性)可以修改,但参数对应的引用(reference)不能修改. 一个测试例子如下: 复制代码 代码如下: <script language="javascript"> //dosomething1,对于引用,变量本身不可以修改,但变量内部结构可以修改 function dosomething1(a){ a = 'try'; } //测试1 function test1(){ var a = {a:'test'

c#网站WebConfig中域名引用示例介绍_实用技巧

在WebConfig中定义如下. 复制代码 代码如下: public class WebConfig { public static string ResourceServer = @"http://www.xxx.com/"; } 在前台页面中这样调用 复制代码 代码如下: <script src="<% =WebConfig.ResourceServer %>/js/jquery-ui-all-min-lastest.js" type=&quo