2013-07-19 3 views
0

Я нахожусь на Java, и мне нужно сделать замену и немного помочь с регулярным выражением.Регулярное выражение с динамическим текстом

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

Я использую xxx в качестве держателя места для динамического текста. Поэтому моя цель - заменить core-xxx текстом, называемым testPlatform. Спасибо за помощь

So System.println (someNewVariable); должен показать

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

Это не собирается быть ххх. это может быть core-doc или core-sos – jrock2004

ответ

4

Вы могли бы сделать

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

где \w+ соответствует одному или более символов слова ([a-zA-Z_0-9])

Имена файлов могут содержать символы Юникода так лучше

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

С помощью этого replaceAll ...

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

во входной строке «core-xxx», xxx - динамическая, поэтому она может быть core-abc, core-efg и т. д., поэтому OP хочет, чтобы Regex – sanbhat

0

Вы должны смотреть на replace и replaceAll методов String

В вашем случае вы должны сделать следующее:

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

не был уверен, это ответ .. должен быть комментарий? – sanbhat

+0

Я просто добавил пример о том, как получить то, что пользователь ищет. – mariosangiorgio

Смежные вопросы