2013-07-19 41 views
0

我在Java中,我需要做一个替换,并需要一些正则表达式的帮助。动态文本的正则表达式

String temp = "/Users/john/core-xxx/testSomething.java" 

我使用xxx作为动态文本的占位符。所以我的目标是用名为testingPlatform的文本替换core-xxx。感谢您的帮助

因此System.println(someNewVariable);应显示

"/Users/john/testingPlatform/testSomething.java" 
+0

它不会是XXX。它可以是core-doc或core-sos – jrock2004

回答

4

你可以做

String newTemp = temp.replaceAll("core-\\w+", "testingPlatform"); 

其中\w+匹配一个或多个单词字符([a-zA-Z_0-9]

文件名可以包含Unicode字符,以便更好地

String newTemp = temp.replaceAll("core-\\p{L}+", "testingPlatform"); 
0

使用此replaceAll ...

replaceAll("yours","Replacement"); 
+0

在输入字符串“core-xxx”中,xxx部分是动态的,所以它可以是core-abc,core-efg等等。所以OP想要一个正则表达式 – sanbhat

0

你应该看看的String

replacereplaceAll方法在你的情况,你应该做到以下几点:

System.println(temp.replaceAll("core-\\w+", "testingPlatform")); 
+1

不知道这个是一个答案..应该是一个评论? – sanbhat

+0

我刚刚添加了一个关于如何获得用户正在寻找的示例。 – mariosangiorgio