【发布时间】:2014-04-03 22:44:15
【问题描述】:
我正在尝试使用 Linkify,但似乎无法关闭 Pattern.compile() 部分。
假设我有一个类似blah blah hi Hello world! can you match me?的字符串
我只想匹配和链接Hello world!,仅此而已。我试图玩弄这个正则表达式:Pattern pattern = Pattern.compile("\\bHello world!\\b");,但它似乎与感叹号不匹配。
匹配精确字符序列的最佳方法是什么?
【问题讨论】:
-
看看
Pattern.quote()做了什么。 -
@DavidWallace 你应该把它写成答案,这样我就可以投票了。我需要完成
Pattern pattern = Pattern.compile(Pattern.quote("Hello world!")); -
不过,我不相信这是您的问题所在。
!在正则表达式中不应该是特殊的。很可能你有一个不同的错误,你现在在不知不觉中删除了。 -
@DavidWallace 可以随意尝试使用
!和不使用!的模式。这似乎是我唯一的问题 -
\b与!之后的边界不匹配,因为!不是\w字符类的一部分,因此不会形成单词边界。
标签: java android regex linkify