社区
C#
帖子详情
求一正则表达式
xum1983
2005-07-11 11:48:00
匹配如下字符串:
[#多个任意字符或汉字:多个任意数字#]
请高手指点,谢谢
...全文
305
21
打赏
收藏
求一正则表达式
匹配如下字符串: [#多个任意字符或汉字:多个任意数字#] 请高手指点,谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
21 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
辉说慧语
2005-07-11
打赏
举报
回复
@"^[\u4e00-\u9fa5]+$";
milkbb
2005-07-11
打赏
举报
回复
\[\#\S+:\d+\#\]
yufenfeila
2005-07-11
打赏
举报
回复
^\[\#.+.*:\d\d*\#\]$
试试看
jFresH_MaN
2005-07-11
打赏
举报
回复
string reg=@"^\[[^\]]*:\d*\]$";
soft_biao
2005-07-11
打赏
举报
回复
正则不熟,帮你顶
俞庆平
2005-07-11
打赏
举报
回复
@"\[\#([^\:]+)\:([^\#]+)\#\]";
注意mobydick的这个正则表达式并不完全正确,对于
@"[#产品_0.产品ID:2#][#产品_0.单价:3#][#求和:4#]";
的确匹配,
但对于
@"[#产品_0.产品ID:aaa#][#产品_0.单价:ccc#][#求和:ddd#]";
它也匹配,也就是说,那是充分条件而非必要条件。
cdo
2005-07-11
打赏
举报
回复
string yourStr = @"[#产品_0.产品ID:2#][#产品_0.单价:3#][#求和:4#]";
string regexStr = @"\[\#([^\:]+)\:([^\#]+)\#\]";
MatchCollection mc = Regex.Matches(yourStr, regexStr);
foreach(Match m in mc)
{
string s1 = m.Groups[0].Value;
string s2 = m.Groups[1].Value;
Console.WriteLine("{0} : {1}", s1, s2);
}
wjlrual
2005-07-11
打赏
举报
回复
up
xum1983
2005-07-11
打赏
举报
回复
已经弄好了 谢谢大家!
xum1983
2005-07-11
打赏
举报
回复
string yourStr = @"[#产品_0.产品ID:2#][#产品_0.单价:3#][#求和:4#]";
我已经得到了3个结果
但是要对他们单独进行替换
例如: 将[#产品_0.产品ID:2#]替换成[#产品ID_0@2.1#]
如何实现呢?
俞庆平
2005-07-11
打赏
举报
回复
Regex.Replace Method
xum1983
2005-07-11
打赏
举报
回复
楼上的正解!
如果我想把查到的内容作替换,应该调用什么方法?
俞庆平
2005-07-11
打赏
举报
回复
"[#产品_0.产品ID:2#][#产品_0.单价:3#][#求和:4#]"
使用\[\#[^:]+\:[\d]+\#\]
使用The Regulator得到三个结果。
可以试试。
lovvver
2005-07-11
打赏
举报
回复
/.,;'[]=\}|+.>?#@:%
俞庆平
2005-07-11
打赏
举报
回复
\[\#[^:]+\:[\d]+\#\]
mobydick
2005-07-11
打赏
举报
回复
string yourStr = @"[#产品_0.产品ID:2#][#产品_0.单价:3#][#求和:4#]";
string regexStr = @"\[\#([^\:]+)\:([^\#]+)\#\]";
MatchCollection mc = Regex.Matches(yourStr, regexStr);
foreach(Match m in mc)
{
string s1 = m.Groups[0].Value;
string s2 = m.Groups[1].Value;
Console.WriteLine("{0} : {1}", s1, s2);
}
xum1983
2005-07-11
打赏
举报
回复
大家可以看一下这段字符串
"[#产品_0.产品ID:2#][#产品_0.单价:3#][#求和:4#]"
Regex re = new Regex(this.regStr);
MatchCollection match = re.Matches(temp);
理论上应该返回3段,但每次返回的集合长度都是0,头疼死了。
tqwer
2005-07-11
打赏
举报
回复
同上
silverseven7
2005-07-11
打赏
举报
回复
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
^\[\#.+:\d\d*\#\]$
fphuang
2005-07-11
打赏
举报
回复
^\[\#.+:\d\d*\#\]$
加载更多回复(1)
正则表达式
函数笔记.php
php
正则表达式
笔记,本人手写的 //----正则匹配----- $p = '/example/' $str = "I am an example"; preg_match($p,$str); //如果$str中含有$p两个/中间的内容(内容不要求完全相同,要求为包含于关系),则返回真 //此时'/example/'就为一
正则表达式
//另外,//可以为分隔符,分隔符可以是非数字、非反斜线、非空格的任意字符。 //经常使用的分隔符是正斜线(/)、hash符号(#) 以及取反符号(~) //分隔符后面可以使用模式修饰符,模式修饰符包括:i, m, s, x等,例如使用i修饰符可以忽略大小写匹配
C++编译原理实验1NFA转化
主要内容– 任给一
正则表达式
转化为不确定自动机NFA –NFA转化为确定自动机 DFA–DFA最小化
javascript
正则表达式
和字符串RegExp and String(一)
前言
正则表达式
是javascript非常重要和常用的功能,在jquery等大型框架中用的非常频繁,最近抽时间学习了解了相关知识,记录下来与需要的朋友分享。 思维导图 RegExp(
正则表达式
)的创建方式 可以通过两种方式创建一个RegExp,具体如下: 通过/…./的方式来创建
正则表达式
(注意: /……/两边是没有单引号或双引号的) 通过RegExp构造方法来创建一
正则表达式
为了更好的描述模式,
正则表达式
提供了3个标识,分别是: g/i/m g: 全局匹配:在整个字符串中匹配,而不是在第一次匹配后之后停止 i: 忽略大小写匹配 m: 对多行字符串中的每一行,应用行首和行末的特殊字符(分别
正则工具(不要下,本资源中有另一正则的)
正则表达式
编写工具,在线看到效果
正则表达式
[\s\S]*与[\w\W]* 什么意思
问: 例如:[a-z]表示从a到z之间的任意一个。 不是这样的吗?谁能给我解释一下[ ]的所有用法?感谢 答: 是完全通配的意思,\s是指空白,包括空格、换行、tab缩进等所有的空白,而\S刚好相反 这样一正一反下来,就表示所有的字符,完全的,一字不漏的。 另外,[]这个符号,表示在它里面包含的单个字符不限顺序的出现,比如下面的正则: [ace]* 这表示,只要出现a/c/e这三个任意的字母,都会被匹配 [\s]表示,只要出现空白就匹配 [\S]表示,非空白就匹配 \w 匹配包括下划线的任何单词字符。等价于“[A-Za-z0-9_]”。 \W 匹配任何非单词字符。等价于“[^A-Za-z0-
C#
110,533
社区成员
642,574
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章