我需要获取所有字符串(非空)以@
开头,并以下面字符串中的' '
(空格)结尾:
String s = "@test1 @test2 @test3 @test4 @@ @test5";
我希望我能获得所有"test1", "test2", "test3", "test4", "test5"
字符串。
如何使用java regx做到这一点?非常感谢!
答案 0 :(得分:1)
您可以使用以下正则表达式
@\w+
\w
与[a-zA-Z\d_]
\w+
匹配来自[a-zA-Z\d_]
答案 1 :(得分:0)
Java正则表达式(?<=@)[^@ ]+(?= )
应该可以解决问题。根据Regex Planet的Java正则表达式页面,正则表达式匹配test1
,test2
,test3
和test4
。 (@test5
不以空格结尾,因此test5
不匹配。)
如果您可以匹配前导@
和尾随,那么您可以使用更简单的Java正则表达式
@[^@ ]+
。
答案 2 :(得分:0)
最后我用下面的代码解决了它:
Pattern pattern = Pattern.compile("@\\p{L}+");