【发布时间】:2014-11-12 06:36:36
【问题描述】:
我想使用正则表达式 O.\w*≈\b (在 c#,.NET Framework 4.0 中)来匹配像 "O.Hasdaas≈" 这样的字符串,但它失败了。但是,如果我用它来匹配 "O.Hasdaas≈abc" ,它可以识别 "O.Hasdaas≈" 。有谁知道为什么会这样?
【问题讨论】:
-
乍一看,它似乎与单词边界有关。使用
(?:$|\b)会发生什么情况,它将匹配输入结束或字边界,而不仅仅是\b? -
给定“O.Hasdaas≈abc”作为输入,您希望匹配失败吗?请记住,如果正则表达式在输入字符串中的任何位置找到该模式,它就会匹配。如果你想匹配整个输入字符串,你应该使用 "^O.\w*≈$" 作为你的正则表达式。
-
@user2864740 是的,这行得通,谢谢!
-
@JoelLee 我想在“O.Hasdaas≈abc”中匹配“O.Hasdaas≈”