2013-06-24 4 views
-6

Как получить определенную часть строки без использования какого-либо индекса. моя строка как:Работа со строками в java: извлечение определенной строки

String path = "D:\SMPPPushGW_SMSCID1_Passive\note.bat"; 

из приведенных выше строк, я хочу, чтобы извлечь

D:\SMPPPushGW_SMSCID1_Passive\ 

Может ли один предоставить код ??

Заранее спасибо.

+1

Включите * код *, что вы пробовали до сих пор. – adatapost

+2

Нет, они не могут. Что ты хочешь? Последний не пространственный фрагмент в строке? 4-й нераспределенный фрагмент? Первый кусок, начинающийся с D? Первый фрагмент, который содержит символ подчеркивания? или 3Ps? – John3136

+0

Где ваш код ??? –

ответ

0

сначала сделать «путь» Java файл API, в StringBuffer, чтобы сделать его легче работать. Затем используйте индексы:

StringBuffer path = new StringBuffer("cmd /c start D:\\SMPPPushGW_SMSCID1_Passive\\note.bat"); 
String result = path.substring(path.indexOf("start")+5, path.lastIndexOf("\\")); 

Как уже упоминалось, File API может быть полезен, но также и URI.

0

Если вы хотите, чтобы путь к файлу, то вы можете использовать

String path = "D:\SMPPPushGW_SMSCID1_Passive\note.bat"; 

File file = new File(path); 
System.out.println(file.getParentFile().getAbsolutePath());