次の形式の文字列があります。
<+923451234567>: こんにちは、本文です。
ここで、携帯電話番号(英数字以外の文字なし)、つまり < > 記号の間の文字列の先頭にある 923451234567 と、テキスト、つまり Hi ここにテキストを取得したいと考えています。
これで、現在行っているハードコードされたロジックを配置できます。
String stringReceivedInSms="<+923451234567>: Hi here is the text.";
String[] splitted = cpaMessage.getText().split(">: ", 2);
String mobileNumber=MyUtils.removeNonDigitCharacters(splitted[0]);
String text=splitted[1];
正規表現で文字列から必要な文字列をきれいに取得するにはどうすればよいですか? 文字列の形式が変わるたびにコードを変更する必要がないように。