| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: GUI и Java FX приложения > как сделать так чтобы Character "\n" не находился |
| Автор: Nin 18.12.2004, 15:30 |
| Привет всем. проблема с регами... никак не могу сделать так чтобы Character "\n" не находился, Вот есть такой string = "[{ 1],\n{ 2],\n{ 3]]" в нем нужно наити { 1] Ищу вот таким выражением: ".\\{\\s+\\d.+" не берёт вот здесь говорят что надо DOTALL флаг вырубить: http://java.sun.com/j2se/1.4.2/docs/api/java/util/regex/Pattern.html#lt как это зделать не доганяю... Заранее благодарен, Ильдар |
| Автор: Oracle 18.12.2004, 16:57 | ||||
Причем тут \n?
Ты лучше скажи, какая строка у тебя выдается?Что находит??У меня находит "[{ 1],", а у тебя что-то не берет....... А вообще попробуй "\\{\\s+[1]\\]" , у меня находит именно то, что ты ищешь: "{ 1]". |
| Автор: Nin 18.12.2004, 17:18 |
| проблема: ".\\{\\s+\\d.+" ищем в "[{ 1]," == тrue ".\\{\\s+\\d.+" ищем в "[{ 1],\n{ 1],\n{ 1]]" == false |
| Автор: Leopard25 18.12.2004, 17:30 |
| а сравниваешь через .equals ? |
| Автор: Oracle 18.12.2004, 17:54 | ||
| Когда вы научитесь писать подробно?Телепатов тут нет (Эт из правил). Nin проблема: ".\\{\\s+\\d.+" ищем в "[{ 1]," == тrue ".\\{\\s+\\d.+" ищем в "[{ 1],\n{ 1],\n{ 1]]" == false Что это означает?? Ты ищешь в первой строке и находишь то , что нужно, а когда ищешь во второй строке не находишь?? Или то, что ты нашел в первой строке совпадает с "[{ 1]," (выдает true), а то что нашел во второй строке не совпадает с "[{ 1]," (то есть выдает false?) При этом, как спросил Leopard25 сравниваешь через equals()?И при этом если просто выводить искомое, то результат и в первом и во втором будет "[{ 1]," P.S Проще приведи кусок кода. Глянь сюда:
Все правильно работает. |
| Автор: Nin 18.12.2004, 18:50 |
| Да как ещё обяснить, вопрос то такой простенькии. ".\\{\\s+\\d.+" ищем в "[{ 1]," == тrue ".\\{\\s+\\d.+" ищем в "[{ 1],\n{ 1],\n{ 1]]" == false в первом случае: ищу и нахожу. во втором: ищу и не нахожу. а мне нужно находить в обоих случаях. |
| Автор: Oracle 18.12.2004, 18:53 |
| Смотри выше.....Попробуй..Результаты скажи....Вроде все находит...Везде все правильно. |
| Автор: Nin 18.12.2004, 18:55 | ||
а целью является доказать что "{" было 3 раза ;)
|
| Автор: Oracle 18.12.2004, 19:02 | ||
или доказать, что три раза было { 1]? |
| Автор: Nin 18.12.2004, 19:08 | ||||
у меня вот это не работает
Добавлено @ 19:15
|
| Автор: Oracle 18.12.2004, 19:16 | ||
| Если ты хочешь проверить, кол-во "{" то пиши просто //{ как у меня в примеру,глянь выше. А потом просто проверь кол-во групп. А как ты хочешь, чтобы у тебя выдало true эта строка
Когда ты ищешь не "[{ 1]," , а "{" P.S Код постарайся писать правильно, это действительно будет хорошо. Расположение кода, я имею ввиду. Добавлено @ 19:18 С переменной тоже можно. А можно просто проверить кол-во групп. Mathcer.groupCount(). P.S Что бы ты знал, на всякий случай.Мне кажется так будет код выглядеть более "эффектно." |
| Автор: Domestic Cat 18.12.2004, 19:23 | ||
|
| Автор: Oracle 18.12.2004, 19:26 |
| Решил проблему то? |
| Автор: Nin 10.1.2005, 19:42 |
| Привет всем, Не подскажите как ... (3 точки) найти? тоесть теперь вместо "{" нужно наити "..." Заранее благодарен, Ильдар |
| Автор: Oracle 10.1.2005, 19:55 | ||
|
| Автор: Nin 10.1.2005, 20:11 |
| Работает, Спасибо Добавлено @ 20:13 Работает, Спасибо Добавлено @ 20:14 Работает, Спасибо Добавлено @ 20:16 Бсё работает, ура!!! спасибо |