Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
walkover
0 / 0 / 0
Регистрация: 04.11.2014
Сообщений: 7
#1

Поиск нескольких символов через indexOf - Программирование Android

04.11.2014, 00:29. Просмотров 746. Ответов 17
Метки нет (Все метки)

кусок кода рабочий

Java
1
2
private void processSMS(String paramString) {
        int i = paramString.indexOf('д');
но как только добавляю ещё один символ перестаёт работать и не компилируется
Java
1
2
private void processSMS(String paramString) {
        int i = paramString.indexOf('дД');
ЧТо можно сделать? мне нужно что бы искало несколько символов, а не один.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2014, 00:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поиск нескольких символов через indexOf (Программирование Android):

Не работает цик(или indexOf() - Программирование Android
Суть кода ниже в том, чтобы находить в строке сочетания символов "ccc" и в них вставлять другой символ. Но программа исправляет только одно...

indexOf и анализ строки символов - Java SE
Нужно подсчитать количество слов в вводимой строке и количество слов начинающихся на заданную букву. Как вообще использовать indexOf для...

IndexOf поиск - Delphi
Я чето не совсем понял IndexOf он только целые строки ищет? Возьмем простой пример, у меня есть список строк: лена вася ...

Получение нескольких записей через поиск - Delphi БД
Добрый день! Есть база на Access к которой подключаюсь через ADO. Нужно произвести поиск с учетом 3 полей и все найденные записи...

Символ не ищется в строке через IndexOf - C++/CLI WinForms
Дорогие друзья, есть строка которую надо обработать, но он почему то не ищет нужный мне символ через IndexOf. не понимаю, почему: ...

Как найти много текста через IndexOf? - C#
Вот например почитав про этот метод что он ищет с 0вого индекса первое вхождение которое сходится. А если у меня вхождений много как мне...

17
walkover
0 / 0 / 0
Регистрация: 04.11.2014
Сообщений: 7
12.11.2014, 16:56  [ТС] #16
"стр01".length() + 1 - это не работает вообще((((
после добавления trim стало копировать вообще 01 12345)))))

буду пробовать последний вариант

Добавлено через 55 минут
как вставить код
Java
1
2
3
4
5
6
7
8
9
10
11
String paramString = "стр01 1234567890 стр02 1234567890 стр03 1234567890";//Я так понимаю исходный файл
        String delimiter = " ";
        String key = "стр01";
        String message;
        String[] paramStringArray = paramString.split(delimiter);
        
        for(int i = 0; i < paramStringArray.length; i++){
            if(paramStringArray[i].equals(key)){
                message = paramStringArray[i + 1];
            }
        }
в мой код? вот весь кусок кода как есть сейчас. не работает, вернее копирует хрен пойми как, логику вообще не улавливаю.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
private void processSMS(String paramString) {
        int i = paramString.indexOf("стр01");
        Log.i("SMSBroadcastReceiver", "paramString = " + paramString);
        String message;
        if (i != -1) {
            if (paramString.length() < 6 + (i + 1))
                Toast.makeText(this, "После @ меньше 6 символов",
                        Toast.LENGTH_LONG).show();
            else {
                try {
                    message = paramString.substring(i + 1, i + 6).trim();
                    Log.d("SMSBroadcastReceiver", message);
                    sendSMS(telephoneDirector, message);
                } catch (IndexOutOfBoundsException e) {
                    // TODO: handle exception
                    Log.d("SMSBroadcastReceiver",
                            "Something wrong with this county..."
                                    + e.getMessage());
                }
            }
 
        }
 
    }
копирует так при это коде 01пробел12
0
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,733
12.11.2014, 17:03 #17
walkover, чтобы у вас не возникало вопросов, возьмите ручку и лист бумаги.
Аккуратно проделайте отладку или просто вставьте в нужные места Log.i, а затем поглядите в LogCat (в режиме Info) полученные сообщения. В Log.i выводите значения переменных. Затем возьмите ручку и поглядите, в какой позиции стоит какой символ, что вы в итоге хотите откуда скопировать.
Можно наловчиться и сделать это даже без отладки.
0
Spelcrawler
528 / 498 / 111
Регистрация: 12.03.2014
Сообщений: 1,663
Завершенные тесты: 1
12.11.2014, 17:11 #18
walkover, попробуйте такой код:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
private void processSMS(String paramString) {
        
        String key = "стр01";
        Log.i("SMSBroadcastReceiver", "paramString = " + paramString);
        String message = "";
        String delimiter = " ";
        String[] paramStringArray = paramString.split(delimiter);
        
        for(int i = 0; i < paramStringArray.length; i++){
            
            if(paramStringArray[i].equals(key)){
                message = paramStringArray[i + 1];
            }
            
        }
        
        
        Log.d("SMSBroadcastReceiver", message); 
        sendSMS(telephoneDirector, message);
 
    }
0
12.11.2014, 17:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.11.2014, 17:11
Привет! Вот еще темы с ответами:

Обращение через индекс Dictionary или IndexOf, что быстрее / производительнее? - C#
Смотрите есть строка: string dic = &quot;abcdefghijklmnopqrstuvwxyz&quot;; мне приходит символ (char) и мне надо выяснить положение этого...

Вставка в строку нескольких символов и удаление символов из строки - VBA
не могу найти информацию про это:( какими операторами это делается?

Поиск символа не могу переделать под поиск сочетания символов - C++
Есть код программы на поиск и замену по одному символу.Не могу понять, как сделать код на поиск сочетания символов. Чтобы найдя в введённой...

Записать последовательность символов в текстовый файл, вставляя символы перевода строки через каждые 40 символов - Pascal ABC
Дана последовательность символов, заканчивающаяся точкой и вводимая пользователем с клавиатуры. Необходимо записать её в текстовый файл,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru