c# 正则提取小例子

常用分组语法
分类 代码/语法 说明
捕获 (exp) 匹配exp,并捕获文本到自动命名的组里
(?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可以写成(?‘name‘exp)
(?:exp) 匹配exp,不捕获匹配的文本,也不给此分组分配组号
零宽断言 (?=exp) 匹配exp前面的位置
(?<=exp) 匹配exp后面的位置
(?!exp) 匹配后面跟的不是exp的位置
(?<!exp) 匹配前面不是exp的位置
注释 (?#comment) 这种类型的分组不对正则表达式的处理产生任何影响,用于提供注释让人阅读
//提取payaccno中间的账号
string input = @"
        <payaccno>6227000000000000001</payaccno>
        <payaccname>张三</payaccname>
        <payaccno>6227000000000000002</payaccno>
        <payaccname>李四</payaccname>
    ";
Regex reg = new Regex(@"(?<=<payaccno>)(\d+)(?=</payaccno>)+");
var matches = reg.Matches(input);
string result = "";
foreach (var m in matches)
{
    result += m + ",";
}
result = result.TrimEnd(‘,‘);
//结果:6227007201840000001,6227007201840000002
时间: 2024-11-11 20:28:21

c# 正则提取小例子的相关文章

Apache Pig字符串截取实战小例子

记录一个Pig字符串截取的实战小例子: 需求如下,从下面的字符串里提取出第2列(冒号后面)的值: Java代码   1 2  3 4 a:ab#c#d a:c#c#d a:dd#c#d a:zz#c#d 如果是在java里,方法可能有很多种,比如substring,或者split多次等,在pig也大致如此,可以使用SUBSTRING内置函数来完成,但散仙推荐使用下面的方式,这种方式比较灵活,适合大部分场景的数据提取,需要用到的2个函数如下: (1)REGEX_EXTRACT('原始字符串','正

这42个Python小例子,太走心~

告别枯燥,60秒学会一个Python小例子.奔着此出发点,我在过去1个月,将平时经常使用的代码段换为小例子,分享出来后受到大家的喜欢. 一.基本操作 . 1 链式比较 i = 3 print(1 < i < 3)  # False print(1 < i <= 3)  # True 2 不用else和if实现计算器 from operator import * def calculator(a, b, k):     return {         '+': add,      

python速成第二篇(小爬虫+文件操作+socket网络通信小例子+oop编程)

大家好,由于前天熬夜写完第一篇博客,然后昨天又是没休息好,昨天也就不想更新博客,就只是看了会资料就早点休息了,今天补上我这两天的所学,先记录一笔.我发现有时候我看的话会比较敷衍,而如果我写出来(无论写到笔记本中还是博客中,我都有不同的感觉)就会有不同的想法,我看书或者看资料有时候感觉就是有一种惰性,得过且过的感觉,有时候一个知识想不通道不明,想了一会儿,就会找借口给自己说这个知识不重要,不需要太纠结了,还是去看下一个吧,然后就如此往复下去,学习就会有漏洞,所以这更加坚定了我写博客来记录的想法.

Runtime的几个小例子(含Demo)

一.什么是runtime(也就是所谓的"运行时",因为是在运行时实现的.)           1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数);  [runtime运行系统]           2.实际上,平时我们编写的oc代码,底层都是基于runtime实现的;                             [OC语言的动态性]  运行时系统 (runtime system),对于C语言,函数的调用在编译的时候会决定调用哪个函数.对

JMeter 如何把上一个请求的结果作为下一个请求的参数 —— 使用正则提取器

有这样一个压力测试环境,有一个上传页面,上传成功之后服务器会返回一些上传信息(比如文件的 id 或者保存路径之类的信息),然后压力机会继续下一个请求,比如调整 id 为 xx 的文件的一些信息等等.问题来了:JMeter 是不知道上传后文件的 id 的,第二个请求势必从第一个请求的返回结果中提取出文件 id,然后依此为参数发起第二次请求.那么 JMeter 如何把上一个请求的结果作为下一个请求的参数呢?本文将介绍如何使用正则提取器解决这个问题.        1. 提参采样器添加正则表达式提取器

JavaScript基础中的基础(小例子:滚动字幕)

一.变量 局部变量声明前面要加"var" <script type="text/javascript"> // 全局变量 name = 'alex'; function func(){ // 局部变量 var age = 18; // 修改全局变量name name = "eric" } </script> 二.数据类型 数据类型有:数字.字符串.布尔值      数组.字典 数字.字符串.布尔值.null.undefin

appium webdriver 基本操作及小例子等

#encoding=utf-8 ''' ''' #driver新建 driver=webdriver.Remote('http://localhost:4723/wd/hub',caps) #关闭driver driver.quit() #find_element_by_id box=driver.find_element_by_id('com.xsteach.appedu:id/rl_home_top_search') box=driver.find_element_by_id('rl_hom

laravel 数据库操作小例子

public function demo() { $res = null; //insert数据插入 //$user=array('username'=>'joy','password'=>'123456','age'=>23); //$res = DB::table('users')->insert($user); /* 数据查询 $res = DB::table('users')->where('username','joy')->get(); $res = DB:

spring小例子-springMVC+mybits整合的小例子

这段时间没更博,找房去了...   吐槽一下,自如太坑了...承诺的三年不涨房租,结果今年一看北京房租都在涨也跟着涨了... 而且自如太贵了,租不起了.. 突然有点理解女生找对象要房了..   搬家太受罪了... 今天更一下springMVC整合mybits形成最简单的网站demo. 大概效果就是这样的:左边是数据库查询结果,右边是页面访问结果: 首先,一个简单的springMVC小例子可以看这个http://www.cnblogs.com/xuejupo/p/5236448.html 这是在这