怎样可以对某个正则表达式的匹配结果取反?

firendlys 2011-04-14 04:04:37
嗯,简单来说,假如有个正则表达式, true|false
现在这个正则表达式可以匹配 true 或者 false 这2个单词。
现在,我想要做的是,想做一个匹配,匹配除了 true false 这2个单词之外的任何字符。

又比如,对于一个匹配html <> 标签的正则表达式 <[^>]*>
怎样可以改成 匹配 除了 <>标签外的所有内容 ??

类似这样的操作,应该怎样在原来的基础上修改呢?

望提供一种通用的方法,同时要求对原来表达式修改的地方尽可能少,

因为如果每一个正则表达式取反都要重新写一条新的表达式,这个问题就没什么意义了。。。

谢谢。。。
...全文
4376 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
q107770540 2011-04-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 lxcnn 的回复:]
你所谓的通用方法是不存在的,否则正则就不是正则了
[/Quote]
+
-过客- 2011-04-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 firendlys 的回复:]
现在,我想要做的是,想做一个匹配,匹配除了 true false 这2个单词之外的任何字符。
[/Quote]

//如果是单个字符
(?is)(?!true|false).
//如果是多个字符
(?is)((?!true|false).)+


[Quote=引用楼主 firendlys 的回复:]
又比如,对于一个匹配html <> 标签的正则表达式 <[^>]*>
怎样可以改成 匹配 除了 <>标签外的所有内容 ??
[/Quote]
这个要看是什么目的,不同的目的,写法不同


正则的问题都是具体问题具体分析的,你所谓的通用方法是不存在的,否则正则就不是正则了

Tosp2012 2011-04-14
  • 打赏
  • 举报
回复
  
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'判断TextBox输入数字的正则
Dim regTemp As New Regex("^\d+")
‘ 为非数字时,提示Not is Numeric,否则is Numeric
If Not regTemp.IsMatch(TextBox1.Text) Then
MessageBox.Show("Not Is Numeric")
Else
MessageBox.Show("Is Numeric")
End If
End Sub

16,722

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧