Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Можно проверить существования символа в строке? / 11 сообщений из 11, страница 1 из 1
20.10.2016, 11:10
    #39330431
wolverin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
есть некоторый список символов, которые должны отсутствовать, понятно что indexof по каждому, но есть вариант сишный чтобы сразу указать все?
...
Рейтинг: 0 / 0
20.10.2016, 11:16
    #39330440
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
wolverin,

java.lang.String.matches() с регуляркой. Не так быстро, но кратко.
Либо Apache Commons Lang
StringUtils.containsAny()
...
Рейтинг: 0 / 0
20.10.2016, 11:22
    #39330446
wolverin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
Blazkowicz,

.matches() как шаблон который должен совпасть это понятно, но как сделать чтобы любой из списка если найдется в строке?
второй вариант изучаю
...
Рейтинг: 0 / 0
20.10.2016, 11:24
    #39330448
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
wolverinно как сделать чтобы любой из списка если найдется в строке?
Под "с регуляркой" я имел ввиду "регулярные выражения".
https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
...
Рейтинг: 0 / 0
20.10.2016, 11:32
    #39330458
wolverin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
BlazkowiczПод "с регуляркой" я имел ввиду "регулярные выражения".
https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
да я понял, но мне надо что если ничего не найдется, то не должно срабатывать, не могу придумать как должен выглядеть шаблон
т.е. вот например должно любую строку проверить на наличие любого симовола %/\;<>
...
Рейтинг: 0 / 0
20.10.2016, 11:46
    #39330481
Alexey Tomin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
wolverinBlazkowiczПод "с регуляркой" я имел ввиду "регулярные выражения".
https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
да я понял, но мне надо что если ничего не найдется, то не должно срабатывать, не могу придумать как должен выглядеть шаблон
т.е. вот например должно любую строку проверить на наличие любого симовола %/\;<>

Глобально есть два решения.
- перебрать все символы строки и каждый сравнить с одним из символов.
- перебрать все символы и поискать в нужной строке.

Первый лучше если строка большая, а символов мало (а это типичный случай). Все регулярки и т.п.- просто способ написать это быстрее , а исполнить медленнее
Но писать быстро, не проблема.
...
Рейтинг: 0 / 0
20.10.2016, 11:59
    #39330493
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
wolverinда я понял, но мне надо что если ничего не найдется, то не должно срабатывать, не могу придумать как должен выглядеть шаблон
т.е. вот например должно любую строку проверить на наличие любого симовола %/\;<>

Ну, так может настало время подучить регулярки?
https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html [abc] a, b, or c (simple class)
[^abc] Any character except a, b, or c (negation)
...
Рейтинг: 0 / 0
20.10.2016, 12:30
    #39330513
wolverin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
Blazkowicz,

видимо настало, попробовал так matches("[^%;/\\<>]") не видит в строке например такой "asdas;asz"
или надо каждый символ!? но у вас указан любой
...
Рейтинг: 0 / 0
20.10.2016, 12:40
    #39330526
wolverin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
так вроде работает matches("^.+[^%;/\\<>].+$")
...
Рейтинг: 0 / 0
20.10.2016, 12:50
    #39330533
wolverin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
Blazkowicz,

спасибо, оставил так
matches("^.*[^%;/\\<>].*$")
...
Рейтинг: 0 / 0
20.10.2016, 12:53
    #39330540
wolverin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно проверить существования символа в строке?
точнее так )
matches("^.*[%;/\\<>].*$")
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Можно проверить существования символа в строке? / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]