Автор Тема: разбор шаблона текста  (Прочитано 1133 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн royalfint [?]

  • Новичок
  • *
  • Сообщений: 74
  • Репутация: 0
  • Пол: Мужской
  • Трейдер, Программист, Игродел, Веб-Мастер
    • BinaryPM
    • Награды
  • Версия AutoIt: 3.3.14.0
разбор шаблона текста
« Создано: Июль 30, 2014, 16:11:07 »
Всем привет! Пишу программку с GUI в котором пользователь может задать шаблон текста который мы будем обрабатывать. Пример значения поля с шаблоном текста: %CUR% M%TF% call. А вот пример самого текста: EURUSD M15 call. Собственно мне нужно запихать в переменную значение %CUR%, %TF% из текста и весь оставшийся текст в другую переменную и сделать отдельный ELSE если не подходит по шаблону. Но как это сделать, что то не приходит в голову :( Прошу у вас помощи!  :IL_AutoIt_1: Всем заранее спс
У меня нет отпуска, у меня каникулы потому что я не работаю, а зарабатываю приличные суммы сидя дома на кресле с кружкой кофе и сигарой. Да я трейдер!

Русское сообщество AutoIt

разбор шаблона текста
« Отправлен: Июль 30, 2014, 16:11:07 »

Помечен как лучший ответ пользователем royalfint Отправлен Июль 30, 2014, 21:13:35

Оффлайн C2H5OH [?]

  • Знаю я тут одно место с офигенными циркулями...
  • AutoIt Гуру
  • *****
  • Сообщений: 1473
  • Репутация: 332
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: разбор шаблона текста
« Ответ #1, Отправлен: Июль 30, 2014, 21:13:03 »
Код: AutoIt [Выделить]
#include <Array.au3>
$text = "EURUSD M15 call"
$pattern = "(.*?)\sM(\d*?)\s(.*?)$"
$aRES = StringRegExp($text, $pattern,3)
If Not @error Then
    _ArrayDisplay($aRES)
Else
    MsgBox(0,"","совпадений не найдено")
EndIf

Рано или поздно все станет понятно, все станет на свои места и выстроится в единую красивую схему, как кружева. Станет понятно, зачем все было нужно, потому что все будет правильно.

Оффлайн royalfint [?]

  • Новичок
  • *
  • Сообщений: 74

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
  • Трейдер, Программист, Игродел, Веб-Мастер
    • BinaryPM
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: разбор шаблона текста
« Ответ #2, Отправлен: Июль 30, 2014, 21:14:10 »
 :beer: thanks a lot!


Добавлено: Июль 30, 2014, 21:23:18
Код: AutoIt [Выделить]
#include <Array.au3>
$text = "EURUSD M15 call"
$pattern = "(.*?)\sM(\d*?)\s(.*?)$"
$aRES = StringRegExp($text, $pattern,3)
If Not @error Then
    _ArrayDisplay($aRES)
Else
    MsgBox(0,"","совпадений не найдено")
EndIf


ну я буду заменять %CUR% на (.*?) а вот как быть с \sTEXT , это будет считаться правильным? \sTEXT SPACE TEXT ALSO TEXT


Добавлено: Июль 31, 2014, 00:21:11
а нет все разобрался
Код: AutoIt [Выделить]
#include "Array.au3"
Local $template="%CUR% M%TF% put"
        $text = "EURUSD M15 call"
        $template=StringReplace($template," ","\s")
        $template=StringReplace($template,"%CUR%","(.*?)")
        $template=StringReplace($template,"%TF%","(\d*?)")
        ;MsgBox(0,"",$template)

        ;$pattern = "(.*?)\sM(\d*?)\scall"
        $aRES = StringRegExp($text, $template,3)
        If Not @error Then
            _ArrayDisplay($aRES)
        Else
            MsgBox(0,"","совпадений не найдено")
        EndIf
 

« Последнее редактирование: Июль 31, 2014, 00:21:11 от royalfint, Причина: Объединение сообщений »

Русское сообщество AutoIt

Re: разбор шаблона текста
« Ответ #2 Отправлен: Июль 30, 2014, 21:14:10 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
7 Ответов
4740 Просмотров
Последний ответ Август 02, 2010, 15:08:53
от diabloff
8 Ответов
5116 Просмотров
Последний ответ Сентябрь 10, 2010, 10:06:45
от CreatoR
4 Ответов
2630 Просмотров
Последний ответ Июль 16, 2011, 23:13:24
от Afonichev
0 Ответов
1659 Просмотров
Последний ответ Март 01, 2012, 06:54:21
от Kaster
4 Ответов
2888 Просмотров
Последний ответ Июль 09, 2012, 20:19:55
от Garrett
0 Ответов
677 Просмотров
Последний ответ Июль 10, 2014, 13:06:00
от madmasles
0 Ответов
519 Просмотров
Последний ответ Июль 30, 2014, 21:31:21
от madmasles
5 Ответов
3664 Просмотров
Последний ответ Декабрь 07, 2015, 01:39:33
от CreatoR
6 Ответов
985 Просмотров
Последний ответ Апрель 21, 2017, 15:21:08
от Dellroc
0 Ответов
68 Просмотров
Последний ответ Август 10, 2018, 22:05:23
от otto2012