Как удалить всю подстроку из «<» в «>» в ​​Java - PullRequest
9 голосов
/ 18 августа 2011

У меня есть программа, которая принимает входную строку. Я хочу удалить что-нибудь внутри символов «<» и «>». Например, если строка говорит

"P.S.<!--
BODY
   {
   color:white;
   background-color: transparent;
   font-family:sans-serif;
   }
--> Hello how are you today?"

Я хочу, чтобы выходная строка содержала только "P.S. Hello how are you today?". Есть ли простой способ сделать это в Java? Спасибо

Ответы [ 2 ]

23 голосов
/ 18 августа 2011

Используйте регулярное выражение:

newstr = str.replaceAll("<[^>]*>", "");

Это означает, что нужно найти каждую подстроку, начинающуюся с <, затем любое количество символов, которые не являются >, а затем символ >,Затем замените все эти подстроки пустой строкой, "".

Ссылка: java.lang.String.replaceAll ()

0 голосов
/ 18 августа 2011

Если вы предпочитаете избегать использования регулярных выражений, вы можете использовать подстроку:

String origText = "P.S.<!--"+
    "BODY"+
       "{"+
       "color:white;"+
       "background-color: transparent;"+
       "font-family:sans-serif;"+
       "}"+
    "--> Hello how are you today?";
String revised = origText.substring(0, origText.indexOf('<')) +
    origText.substring(origText.lastIndexOf('>')+1, origText.length());

` Ссылка на класс строки Java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...