JS和C#实现的两个正则替换功能示例分析
本文实例讲述了JS和C#实现的两个正则替换功能。分享给大家供大家参考,具体如下:
应用实例1:
待处理字符串:str="display=test name=mu display=temp"
要求:把display=后的值都改成localhost
JS处理方法:
str.replace(/display=\w*/g,"display=localhost");
C#处理方法:
Regex reg=new Regex(@"display=\w*"); str=reg.Replace(str,"display=localhost");
应用实例2:
待处理字符串:str="display=test name=mu display=temp"
要求:字符串变为display=localhosttest name=mu display=localhosttemp
JS处理方法:
var reg = /(display=)(\w*)/g; var result; while ((result= reg.exec(str))!=null) { str= str.replace(result[0], result[1] + "localhost" + result[2]); }
C#处理方法:
/// <summary> /// 定义处理方法 /// </summary> /// <param name="match">符合的字符串</param> /// <returns></returns> private string Evaluator(Match match) { //(display=)(\w*) Groups按查找到的字符串再根据分组进行分组 //第0组为整个符合的字符串,后面的组按括号顺序排 string str =match.Groups[1].Value+"localhost"+ match.Groups[2].Value; return str; } Regex regex = new Regex(@"(display=)(\w*)"); string result = regex.Replace(str, Evaluator);
最后还有一个关于js的正则的小总结:
字符串match
和正则对象exec
的区别
1、 当正则表达式没有/g时,两者返回第一个符合的字符串或字符串组(如果正则中有分组的话)
2、 当正则表达式有/g时,match返回全部符合的字符串组且忽略分组,exec则返回第一个字符串或字符串组
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript
正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg
希望本文所述对大家正则表达式学习有所帮助。
相关推荐
-
C#动态创建button按钮的方法实例详解
C#动态创建button按钮的方法实例详解 C#编程中经常需要动态创建,本文主要介绍C#动态创建button按钮的方法,涉及C#按钮属性动态设置的相关技巧,以供借鉴参考.具体实现方法如下: 例子: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.T
-
C#贪吃蛇游戏实现分析
今天无聊突发奇想做个贪吃蛇,虽然网上很多这东西了,不过自己写的感觉还行吧 贪吃蛇分析 游戏规则: 1.蛇起始长度5,每吃一个食物增加1,最大15过关 2.蛇用蓝色表示,食物用绿色,障碍物用黑色 3.当蛇碰到自己.墙壁.障碍物则游戏失败 4.方向键控制蛇的移动方向,蛇不可反方向移动,如正在向上移动,不能马上向下,只能向左.右.上运动 5.每过关一次速度提升一次 大概思路: 1.地图用网格的形式表示,蛇由方格组成,保存在list中 2.1中提到了方格,方格保存的内容有,颜色,坐标,是否可以通过,是否
-
C#正则表达式匹配与替换字符串功能示例
本文实例讲述了C#正则表达式匹配与替换字符串功能.分享给大家供大家参考,具体如下: 事例一:\w+=>[A-Za-z1-9_],\s+=>任何空白字符,()=>捕获 string text = @"public string testMatchObj string s string match "; string pat = @"(\w+)\s+(string)"; // Compile the regular expression. Regex
-
C#利用ReportViewer生成报表
本文主要是利用微软自带的控件ReportViewer进行报表设计的小例子,具体内容如下 涉及知识点: ReportViewer :位于Microsoft.Reporting.WinForms命名空间, 主要用于报表的显示 Report:报表,以rdlc结尾的文件,可视化设计报表模板. 报表数据:内置字段,参数,图像,数据集(本报表主要使用参数,和数据集) ReportParameter:使用名称和值实例化新的报表参数 ReportDataSource:报表的数据源与DataTable对象联系起来
-
C#删除UL LI中指定标签里文字的方法
本文实例讲述了C#删除UL LI中指定标签里文字的方法.分享给大家供大家参考,具体如下: 现在需求越来越变态,但是做代码只能尽量满足,这里先是扣去ul和li中的超链接里的文字 PromptHtml = GetData.GetHTTPInfo(Config.Prompt_Url, "utf-8"); PromptHtml = PromptHtml.Replace("<ul><li>", ""); PromptHtml=Pro
-
详解c# .net core 下的网络请求
本文章是在VS2017的环境下,.net core 1.1版本以上. 在这期间,由于.net core 并不基于IIS,我们的过去的网络请求代码在.net core框架下,有可能会出现不兼容,报错的现象.这里大致介绍下在.net core 下如何进行http请求,主要仍然是GET和POST方法,有错误的地方,欢迎指正! 先来说POST,POST我实现了三种方法,前两种基于的原理是完全一致的,后面的有些小小的差异,但他们的本质都是http请求,本质上是无区别的,只是实现方法有所不同. 废话不多说,
-
JS和C#实现的两个正则替换功能示例分析
本文实例讲述了JS和C#实现的两个正则替换功能.分享给大家供大家参考,具体如下: 应用实例1: 待处理字符串:str="display=test name=mu display=temp" 要求:把display=后的值都改成localhost JS处理方法: str.replace(/display=\w*/g,"display=localhost"); C#处理方法: Regex reg=new Regex(@"display=\w*");
-
vue.js项目 el-input 组件 监听回车键实现搜索功能示例
基于element-ui 组件 开发的vue.js项目, 实现回车键发起搜索,和原生的input 标签使用方法不一样: el-input 监听键盘按下状态 得用@keyup.enter.native,如果是非el-input 组件,可以直接用@keyup.enter <el-input placeholder="搜索" icon="search" v-model="input" :on-icon-click="pchandleIc
-
NPOI实现两级分组合并功能(示例讲解)
NPOI版本:2.2.1.0 最近公司有这样的需求: 统计每个部门下面,多个费用使用情况.部门存在多级,但统计时,只需统计到2级,2级以下的,归到第2级的部门下.并且要求,第2级部门有个小计,第1级部门需要有个合计.最后,还需提供总计. 本来对NPOI研究的还不够深入的,以前都是直接通过别人提供的代码来实现对DataTable中的数据进行全部导出,但里面不带合并,及合计功能,不满足当前需求.不得已,只有好好地研究一下了.还好,最终实现了要求. 在此,也感谢其他提供相关资料的人员,让我实现了此功能
-
JS实现的判断方法、变量是否存在功能示例
本文实例讲述了JS实现的判断方法.变量是否存在功能.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> ////www.jb51.net/article/67551.htm //判断变量i是否存
-
JS实现数组去重及数组内对象去重功能示例
本文实例讲述了JS实现数组去重及数组内对象去重功能.分享给大家供大家参考,具体如下: 大家在写项目的时候一定遇到过这种逻辑需求,就是给一个数组进行去重处理,还有一种就是给数组内的对象根据某一个属性,比如id,进行去重,下面我写了两个函数,都是可以达到这个效果的,一个是纯ES5的去重办法,一个是用了ES6的 Array.from(new Set())和ES5的reduce来进行去重 我先定义两个数组吧 var arr = [1,2,3,5,3,4,5,6,6,"test","t
-
javascript使用递归算法求两个数字组合功能示例
本文实例讲述了javascript使用递归算法求两个数字组合功能.分享给大家供大家参考,具体如下: // 12 ,3,4 两个数字组合 最后结果 应该是 // 13 // 14 // 23 // 24 // 34 // 这5种 用程序 怎么算出来 // 是求组合的算法 // var arr = [12, 3, 4]; // var len = arr.length; // var result = []; // for (var i = 0; i < len; i++) { // for (va
-
JS基于面向对象实现的多个倒计时器功能示例
本文实例讲述了JS基于面向对象实现的多个倒计时器功能.分享给大家供大家参考,具体如下: 运行效果图如下: 实现代码如下: 代码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> &l
-
JS实现为动态添加的元素增加事件功能示例【基于事件委托】
本文实例讲述了JS实现为动态添加的元素增加事件功能.分享给大家供大家参考,具体如下: 我们在日常开发中有时会通过js创建一些元素,但是如果使用原始的for循环给创建的节点添加事件的方法往往行不通: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>www.jb51.net js动态添加事件</title>
-
js实现类似iphone的网页滑屏解锁功能示例【附源码下载】
本文实例讲述了js实现类似iphone的网页滑屏解锁功能.分享给大家供大家参考,具体如下: iphone 的出现,打破了人们的用户体验,这一用户体验也延伸到了网页设计上.最近看到很多blog的评论都用类似iphone滑动解锁的方式实现.只有滑动解锁之后才能评论,或者做其他的事情.这个功能的实现,其实并不麻烦,关键是要有好的美工,做出好的滑动图片,然后javascript配合CSS就可以完成,我在这里也简单实现了一个,基本功能如下 1. 打开页面时隐藏评论框,你可以做成disable形式,下载源码
-
Vue.js递归组件实现组织架构树和选人功能案例分析
大家好!先上图看看本次案例的整体效果. **浪奔,浪流,万里涛涛江水永不休.如果在jq时代来实这个功能简直有些噩梦了,但是自从前端思想发展到现在的以MVVM为主流的大背景下,来实现一个这样繁杂的功能简直不能容易太多.下面就手把手带您一步步拨开这个案例的层层迷雾.** 实现步骤如下: 1. api构建部门和员工信息接口,vuex全局存放部门list和员工list数据信息. api: export default { getEmployeeList () { return { returncode:
随机推荐
- Python闭包实现计数器的方法
- VUE多层路由嵌套实现代码
- android Animation监听器AnimationListener的使用方法)
- 简单谈谈Python中函数的可变参数
- js this函数调用无需再次抓获id,name或标签名
- javascript图片预览和上传(兼容IE)
- 清空元素html("") innerHTML="" 与 empty()的区别和应用(推荐)
- 浅谈python字典多键值及重复键值的使用
- ASP下存储过程编写入门全接触第1/5页
- MySQL Sleep连接过多问题解决方法
- 五个常用的Linux监控脚本代码
- jQuery实现的表格展开伸缩效果实例
- VBS破坏性应用代码
- C++泛型算法的一些总结
- C语言模拟实现C++的继承与多态示例
- 非常棒的jQuery图片轮播效果
- Javascript中toFixed计算错误(依赖银行家舍入法的缺陷)解决方法
- WampServer设置apache伪静态出现404 not found及You don't have permission to access / on this server解决方法分析 原创
- Java 反射机制详解及实例
- WINXP下apache+php4+mysql