有人可以帮我构建一个正则表达式来捕获字符串中的"#"
和一系列数字吗?
示例:此字符串中的"asdadadsa #12345 asdasdasd #67"
我需要使用#12345
之类的链接替换#67
和"com.package.name://#12345"
。我在java工作,但我希望是一个普遍的问题
答案 0 :(得分:2)
你需要看看基本的正则表达式,谷歌一些教程/指南。
回到你的问题,试试这一行:
String str ="asdadadsa #12345 asdasdasd #67";
String newString = str.replaceAll("#\\d+", "com.package.name://#12345");
然后newString
将是:
asdadadsa com.package.name://#12345 asdasdasd com.package.name://#12345
编辑基于OP的评论
然后您可以$0, $1, $2...
引用匹配的部分0,1,2
是组索引。
所以这条线变成了:
String newString = str.replaceAll("#\\d+", "com.package.name://$0");
newString
不应该有您的期望值。
答案 1 :(得分:0)
我决定使用:
message.replaceAll("[#][0-9]+", "<a href=\"$0\">$0</a>");
由于