注冊
登录
论坛
搜索
帮助
导航
私人消息 (0)
公共消息 (0)
系统消息 (0)
好友消息 (0)
帖子消息 (0)
正则表达式论坛
»
答疑解惑
» 唉..........又来求正则了
返回列表
发帖
Lie_li
发短消息
加为好友
Lie_li
当前离线
UID
42
帖子
33
精华
0
积分
18
阅读权限
10
在线时间
14 小时
注册时间
2009-3-26
最后登录
2010-7-12
新手上路
1
#
跳转到
»
倒序看帖
打印
字体大小:
t
T
发表于 2010-3-9 12:15
|
只看该作者
唉..........又来求正则了
求正则
,
正则表达式
,
学正则
,
正则
本帖最后由 Lie_li 于 2010-3-9 13:55 编辑
aaa bbb cccc
这3个字符任意位置搭配 中间可以穿插任意字符 必须同时存在 不必\b圈起来
另外这3组字符 在一行中必须同时出现,缺少任意一个都不行。
感觉很丢脸 学正则那么久了都
唉
收藏
分享
Lie_li
发短消息
加为好友
Lie_li
当前离线
UID
42
帖子
33
精华
0
积分
18
阅读权限
10
在线时间
14 小时
注册时间
2009-3-26
最后登录
2010-7-12
新手上路
2
#
发表于 2010-3-9 12:43
|
只看该作者
感觉自己对正则还处在狂热期,一切字符问题都可以‘一正解万难’,可纠结到最后不得不与其他程序妥协相互合作解决问题。
一般正则在文本什么样的情况下会失去‘一正解万难’的效力?
TOP
rex
发短消息
加为好友
rex
当前离线
UID
2
帖子
421
精华
0
积分
254
阅读权限
200
在线时间
195 小时
注册时间
2008-11-3
最后登录
2010-9-8
管理员
3
#
发表于 2010-3-9 14:34
|
只看该作者
能否给出一两例可以成功匹配的目标文本?
是否可以这样理解:
保证该行文本必须出现至少一个a,一个b,一个c,顺序无关,重复次数无关。其它字符任意?
如果是这样的话
正则如下:
(?=.*?a.*?)(?=.*?b.*?)(?=.*?c.*?)^.*$
复制代码
在答疑解惑版提问时,请注明所用语言、范例文本、匹配结果。谢谢!
------------------------------------------------------------------------------
我爱正则表达式
GTalk: rex[at]zhasm[dot]com
Twitter:
rex_zhasm
TOP
Lie_li
发短消息
加为好友
Lie_li
当前离线
UID
42
帖子
33
精华
0
积分
18
阅读权限
10
在线时间
14 小时
注册时间
2009-3-26
最后登录
2010-7-12
新手上路
4
#
发表于 2010-3-9 14:58
|
只看该作者
太帅了.............
不过看不太懂
你用了3个“右边是什么”的环视,光这位置信息就已经头晕了
至于最后的“ ^.*$ ”单独使用是匹配某一行只有某一字符,但加在后面 我就不太明白了
TOP
Lie_li
发短消息
加为好友
Lie_li
当前离线
UID
42
帖子
33
精华
0
积分
18
阅读权限
10
在线时间
14 小时
注册时间
2009-3-26
最后登录
2010-7-12
新手上路
5
#
发表于 2010-3-9 15:15
|
只看该作者
我想我想明白了
首先环视是不匹配东西的,真正匹配的是最后的^.*$
意思是匹配任意一行
该行的任意位置的右边开始起是任意字符接着是abc任意一个接着任意字符
对吧......
TOP
blacklong
发短消息
加为好友
blacklong
当前离线
UID
125
帖子
14
精华
0
积分
6
阅读权限
10
在线时间
3 小时
注册时间
2009-9-16
最后登录
2010-5-1
新手上路
6
#
发表于 2010-3-10 06:35
|
只看该作者
这样的问题就不太适合用正则了。
TOP
rex
发短消息
加为好友
rex
当前离线
UID
2
帖子
421
精华
0
积分
254
阅读权限
200
在线时间
195 小时
注册时间
2008-11-3
最后登录
2010-9-8
管理员
7
#
发表于 2010-3-10 22:57
|
只看该作者
首先环视是不匹配东西的,真正匹配的是最后的^.*$
前边的三个环视,是为了约束后面真正的匹配,满足环视中的条件。即,里面必须分别保证a,b,c都能出现.
在答疑解惑版提问时,请注明所用语言、范例文本、匹配结果。谢谢!
------------------------------------------------------------------------------
我爱正则表达式
GTalk: rex[at]zhasm[dot]com
Twitter:
rex_zhasm
TOP
wuyazhe
发短消息
加为好友
wuyazhe
当前离线
UID
1000
帖子
17
精华
0
积分
0
阅读权限
10
在线时间
3 小时
注册时间
2010-4-9
最后登录
2010-5-16
新手上路
8
#
发表于 2010-5-4 11:29
|
只看该作者
bool include_a_b_c = Regex.IsMatch(@"a1bdacfd",
@"^(a(?<a>)|b(?<b>)|c(?<c>)|[^abc])+(?(a)|(?!))(?(b)|(?!))(?(c)|(?!))$")
CSDN论坛VB.net版块
TOP
返回列表
网海文摘
[收藏此主题]
[关注此主题的新回复]
[通过 QQ、MSN 分享给朋友]