java 正则表达式 以标点符号结尾 怎么判断

我想判断一个英文单词是不是以标点符号结尾,我用了边界匹配器$,但是结果总是不对,求高人指导!自己写的一个测试程序:publicclassRegexTest{publics... 我想判断一个英文单词是不是以标点符号结尾,我用了边界匹配器$,但是结果总是不对,求高人指导!
自己写的一个测试程序:
public class RegexTest
{
public static void main(String[] args)
{
if("a:".matches(":$"))
System.out.print("yes");
}
}

按照那个$的意思,以:结尾就应该被匹配,但是这里运行的结果却是没有匹配,请问这是为什么?
展开
 我来答
姓从蓉秘素
2019-10-14 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:29%
帮助的人:627万
展开全部
[\w\+]+
这样写还可以匹配下划线_
如果不需要下划线的话,就这样[0-9a-za-z\+]+
注意:有些语言还需要把\转义一下
http_p
推荐于2017-12-16 · TA获得超过1095个赞
知道小有建树答主
回答量:733
采纳率:100%
帮助的人:585万
展开全部
你正则有错误, 改为

if("a:".matches(".*:$"))就匹配了

还有, 以xx结尾可以用endWith
追问
哦~我以为只要有$就是结尾了不用管前面,原来还是要用.*来代表。这样就对了~谢谢~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式