c# 正则表达式 匹配中括号&颜色过滤

现在需要匹配 [color=#000000],以"[color"开头,以"]"结束,中间字符数量不限制,最后返回所有匹配的下标。

代码如下:

 1         /// <summary>
 2         /// 取得所有匹配项的下标
 3         /// </summary>
 4         /// <param name="source">原内容</param>
 5         /// <returns>返回匹配列表的下标</returns>
 6         public static int[] GetColorIndexGroup(string source)
 7         {
 8             // 定义正则表达式用来匹配
 9             Regex reg = new Regex("\\[color.*?\\]", RegexOptions.IgnoreCase);
10
11             //将匹配到的项替换为空
12             //var newSource = reg.Replace(source, "");
13
14             // 搜索匹配的字符串
15             MatchCollection matches = reg.Matches(source);
16
17             int i = 0;
18             int[] colorGroup = new int[matches.Count];
19             // 取得匹配项列表
20             foreach (Match match in matches)
21             {
22                 colorGroup[i++] = match.Index;
23             }
24             return colorGroup;
25         }
时间: 2024-11-05 22:57:15

c# 正则表达式 匹配中括号&颜色过滤的相关文章

正则表达式匹配规则及示例

正则表达式 - 匹配规则 基本模式匹配 一切从最基本的开始.模式,是正规表达式最基本的元素,它们是一组描述字符串特征的字符.模式可以很简单,由普通的字符串组成,也可以非常复杂,往往用特殊的字符表示一个范围内的字符.重复出现,或表示上下文.例如: ^once 这个模式包含一个特殊的字符^,表示该模式只匹配那些以once开头的字符串.例如该模式与字符串"once upon a time"匹配,与"There once was a man from NewYork"不匹配

PHP核心技术与最佳实践之正则表达式匹配规则

PHP核心技术与最佳实践之正则表达式匹配规则 本文介绍几种常用的匹配规则. 1.     字符组 查找数字.字母.空白很简单,因为已经有了对应这些集合的元字符,但是如果匹配没有预定义元字符的字符集合,方法很简单, 就是在方括号内列出它们. 例如:[aeiou]匹配任何一个英文元音字母,[.*?]匹配标点中的一个.注意此时方括号内的元字符失去了特殊意义. 也可以指定字符范围,例如[0-9]的含义和\d完全一致:代表一位数字:同理[a-zA-Z0-9]等同于\w; 字符组很简单,但是一定要弄清楚字符

正则表达式匹配/data/misc/wifi/wpa_supplicant.conf的WiFi名称与密码

正则表达式匹配/data/misc/wifi/wpa_supplicant.conf的WiFi名称与密码: String regex_name="ssid=\"(.*?)\""; String regex_psk="psk=\"(.*?)\""; 核心代码: Pattern p_name=Pattern.compile(regex_name); Pattern p_psk=Pattern.compile(regex_psk);

PHP 正则表达式匹配 preg_match 与 preg_match_all 函数

--http://www.5idev.com/p-php_preg_match.shtml 正则表达式在 PHP 中的应用 在 PHP 应用中,正则表达式主要用于: 正则匹配:根据正则表达式匹配相应的内容 正则替换:根据正则表达式匹配内容并替换 正则分割:根据正则表达式分割字符串 在 PHP 中有两类正则表达式函数,一类是 Perl 兼容正则表达式函数,一类是 POSIX 扩展正则表达式函数.二者差别不大,而且推荐使用Perl 兼容正则表达式函数,因此下文都是以 Perl 兼容正则表达式函数为例

正则表达式匹配包括换行符的所有字符

今天在Java中想使用正则表达式来获取一段文本中的任意字符. (.*) 结果运行之后才发现,无法获得换行之后的文本.于是查了一下手册,才发现正则表达式中,"."(点符号)匹配的是除了换行符"\n"以外的所有字符. 查出了一个解决办法,经过一试,果然可以匹配包括换行符在内的任意字符,以下为正确的正则表达式匹配规则: ([\s\S]*)正则表达式匹配包括换行符的所有字符,布布扣,bubuko.com

使用正则表达式匹配IP地址

如何使用正则表达式匹配IP地址?这是很常见的任务.说难也难,说易也易,取决于在匹配的精确度以及正则表达式复杂度之间很好的折中. 通常,IP地址以点分十进制方式表示,IP地址分为4段,以点号分隔.要对IP地址进行匹配,首先要对其进行分析.0.0.0.0 - 255.255.255.255 一个简单的正则表达式: [0-9]+(?:\.[0-9]+){0,3} 或者 ^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$ 它能够完成我们的任务,但是像"3948.3.89.34238"

PHP 正则表达式匹配 img ,PHP 正则提取或替换图片 img 标记中的任意属性。

PHP正则提取或替换img标记属性 PHP 正则表达式匹配 img ,PHP 正则提取或替换图片 img 标记中的任意属性. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 <?php /*PHP正则提取图片img标记中的任意属性*/ $str = '<center><img src="/uploads/images/20100516000.jpg"

用正则表达式匹配汉字,完整总结

提到用正则表达式匹配汉字,很容易搜到这个[\u4e00-\u9fa5],但是它不算全面,不包含一些生僻汉字. 本文对此问题做一个梳理. 以下是比较全面的汉字Unicode分布,截止Unicode 8.0标准(2015年6月): 区块 范围 实际汉字个数 正则式 CJK统一汉字 4E00-62FF, 6300-77FF, 7800-8CFF, 8D00-9FFF. 20,950 [\u4E00-\u9FFF] CJK统一汉字扩展A区 3400-4DBF. 6,582 [\u3400-\u4DBF]

【PYTHON】对整个文件进行正则表达式匹配

1 #coding:utf-8 2 import re 3 def IDXtoSCS(path):#IDX转换为开思的函数 4 IDXfile=open(path,'r') 5 fileread=IDXfile.readlines() 6 IDXfile.close() 7 p='"(\w)*",\s+(\d+\\.\d+),\s+(\d+\\.\d+),\s+(\d+\\.\d+),\s+"(\w*)",' 8 data=re.findall(p,fileread