Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.28;
Скачать: CL | DM;

Вниз

Как прочитать слово из середины предложения?   Найти похожие ветки 

 
В л а д и м и р ©   (2004-03-10 18:23) [0]

Необходимо "достать" дату из следующего предложения: "На начало 01.03.2004 года". Заранее спасибо за помощь.


 
TUser ©   (2004-03-10 18:26) [1]

рег. выражениями или "ручками" - поискать последовательность чсимволов, которая является датой.


 
Brahman ©   (2004-03-10 18:29) [2]

Подумать, как может быть представлена дата в строке
01/03/04
01.03.2004
1 марта 2004
отсюда и исходить


 
В л а д и м и р ©   (2004-03-10 19:12) [3]

Допустим, что представлена как 01.03.2004. И как ее вытащить?


 
Fay ©   (2004-03-10 19:17) [4]

Copy()


 
TUser ©   (2004-03-10 19:25) [5]

поставь RegExpr и используй [1]


 
Александр1 ©   (2004-03-10 19:26) [6]

Как из строки считывать слова, разделенные запятой????
Здесь приведены два алгоритма. Первый удобен, если входные данные - переменная, которую можно менять и она больше не понадобится. Второй вариант не изменяет входных данных.

procedure TForm1.Button1Click(Sender: TObject);
var
 s: string;
 p: integer;
begin
 s := "саша,маша,оля";
 repeat
   p := pos(",", s);
   if p <= 0 then p := Length(s) + 1;
   ListBox1.Items.Add(copy(s, 1, p - 1));
   delete(s, 1, p);
 until s = "";
end;

procedure TForm1.Button2Click(Sender: TObject);
const
 s = "саша,маша,оля";
var
 i: integer;
 buf: string;
begin
 buf := "";
 for i := 1 to Length(s) do
   if s[i] = "," then begin
     ListBox1.Items.Add(buf);
     buf := "";
   end else buf := buf + s[i];
 ListBox1.Items.Add(buf);
end;

А теперь напряги мозги и подумай, как это можно использовать!!!!!!!!!!!


 
wisekaa ©   (2004-03-10 19:33) [7]

function FindDateInStr(str: string): string;
var
s, sDate: string;
begin
result:="";
// str:="На начало 01.03.2004 года";
s:=str;
while pos(" ",s) > 0 do begin
 sDate:="";
 sDate:=Copy(s,1,pos(" ", s)-1);
 try
  StrToDate(sDate);
  result:=sDate;
  Break;
 except end;
 Delete(s,1,pos(" ", s));
end;
end;


 
Никто ©   (2004-03-10 19:40) [8]

function GetDate(Str:String):String;
var s:String;
begin
   s:=Copy(str,pos(".",str)-2,10);
   try
       StrToDate(S);
   except
   on EConvertError do
       begin
        if pos(".",str)<>0 then
        begin
            s:=Copy(str,pos(".",str)+1,length(str)-pos(".",str));
//             ShowMessage(s);
            s:=GetDate(s);
        end else s:="Fail";
       end;
   end;
result:=s;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:=GetDate(Edit1.Text);
end;


 
Никто ©   (2004-03-10 19:50) [9]

ps и не забудь про DateSeparator -)


 
В л а д и м и р ©   (2004-03-10 20:59) [10]

Всем огромное спасибо за помощь, щас попробуем все это использовать на практике..


 
evvcom   (2004-03-11 08:50) [11]


> wisekaa ©   (10.03.04 19:33) [7]
> function FindDateInStr(str: string): string;
> var
> s, sDate: string;
> begin
> result:="";
> // str:="На начало 01.03.2004 года";
> s:=str;


А переменная s зачем? Если значение str больше нигде не используется. Можно изменять и значение str, с исходной строкой ничего не случится!



Страницы: 1 вся ветка

Текущий архив: 2004.03.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
7-1073569477
Яша
2004-01-08 16:44
2004.03.28
чтение файла по секторам


7-1073820337
Александр из Минска
2004-01-11 14:25
2004.03.28
Теория по сервисам


1-1078605576
_Stalker_
2004-03-06 23:39
2004.03.28
Access Violation


3-1077159983
Sirus
2004-02-19 06:06
2004.03.28
Максимальное количество Insert и Update в одной тарнзакции...


14-1078404239
ISP
2004-03-04 15:43
2004.03.28
Skazem PHP - NET!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский