Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
 Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
Toxic Phantom
Member [заблокирован]

Откуда:
Сообщений: 56
Я вот подумал, было бы очень удобно если бы в дельфях были ф-ции для работы со строками как в php.
Может, уже запилил кто-то и оно есть в интернетах?
10 сен 18, 18:37    [21670172]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
asutp2
Member

Откуда: Тюмень
Сообщений: 330
Toxic Phantom,

каких именно функций работы со строками нет в делфи?
10 сен 18, 18:42    [21670177]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
MBo
Member

Откуда:
Сообщений: 61
А что, разве в Delphi нет функций для работы со строками?
10 сен 18, 18:43    [21670179]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
Toxic Phantom
Member [заблокирован]

Откуда:
Сообщений: 56
asutp2, например explode, mb_convert_case

Я вот такую нагуглил, работает. Подумалось, а вот бы все были. Мне бы стало легче жить, например.

function str_explode(const delim, str: string): TStringList;
var offset: integer;
    cur: integer;
    dl: integer;
begin
  Result:=TStringList.Create;
  dl:=Length(delim);
  offset:=1;
  while True do begin
      cur:=PosEx(delim, str, offset);
      if cur > 0 then
          Result.Add(Copy(str, offset, cur - offset))
      else begin
          Result.Add(Copy(str, offset, Length(str) - offset + 1));
          Break
      end;
      offset:=cur + dl;
  end;
end;
10 сен 18, 18:50    [21670185]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 46102

Toxic Phantom
например explode, mb_convert_case

Первое это TStringList.DelimitedText
Второе это AnsiUpperCase.

Posted via ActualForum NNTP Server 1.5

10 сен 18, 18:55    [21670188]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
Toxic Phantom
Member [заблокирован]

Откуда:
Сообщений: 56
Ясно. Просто книжки дорогие сейчас я не все знаю по этому.
10 сен 18, 18:58    [21670190]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 46102

Кнопка F1 тоже требует заплатить за своё нажатие?..

Posted via ActualForum NNTP Server 1.5

10 сен 18, 19:11    [21670205]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
Квейд
Member

Откуда: Kyiv, Ukraine
Сообщений: 5088
Toxic Phantom
asutp2, например explode, mb_convert_case

Я вот такую нагуглил, работает. Подумалось, а вот бы все были. Мне бы стало легче жить, например.

function str_explode(const delim, str: string): TStringList;
var offset: integer;
    cur: integer;
    dl: integer;
begin
  Result:=TStringList.Create;
  dl:=Length(delim);
  offset:=1;
  while True do begin
      cur:=PosEx(delim, str, offset);
      if cur > 0 then
          Result.Add(Copy(str, offset, cur - offset))
      else begin
          Result.Add(Copy(str, offset, Length(str) - offset + 1));
          Break
      end;
      offset:=cur + dl;
  end;
end;


System.StrUtils.SplitString
10 сен 18, 19:33    [21670220]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
asviridenkov
Member

Откуда:
Сообщений: 3827
Квейд,

s.Split
10 сен 18, 19:37    [21670226]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
asutp2
Member

Откуда: Тюмень
Сообщений: 330
Toxic Phantom,

пиши и дальше на php, так для тебя будет лучше)
10 сен 18, 19:58    [21670257]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1161
http://docwiki.embarcadero.com/Libraries/Tokyo/en/System.SysUtils.TStringHelper_Methods

На любой вкус
10 сен 18, 21:47    [21670320]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
X11
Member

Откуда: Kharkiv, Ukraine
Сообщений: 12480
Toxic Phantom
удобно если бы в дельфях были ф-ции для работы со строками как в php.


У Delphi функций работы со строками вагон и маленькая тележка. Так же есть и хелперы.

S := 'вася'.UpperCase;
будет ВАСЯ

explode - это несколько строк кода с использованием TStringList и/или StringReplace
11 сен 18, 12:35    [21670803]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
X11
Member

Откуда: Kharkiv, Ukraine
Сообщений: 12480
Toxic Phantom
например explode, mb_convert_case

Я вот такую нагуглил,


разделитель - вертикальная черта |
  s := 'address=.*?&|coord=.*?&|&zoom=\d+|center=.*?&';

  sl := TStringList.Create;
  try
    sl.Delimiter := '|';
    sl.DelimitedText := s;

цикл по TStringList
    for I := 0 to pred(sl.Count) do
11 сен 18, 12:38    [21670806]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
rgreat
Member

Откуда:
Сообщений: 4481
X11
explode - это несколько строк кода с использованием TStringList и/или StringReplace
Зачем, если есть .Split о котором тут уже говорилось?
11 сен 18, 12:41    [21670810]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
X11
Member

Откуда: Kharkiv, Ukraine
Сообщений: 12480
А Если у ТС версия языка без хелперов?
11 сен 18, 12:49    [21670821]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
Dimonka
Member

Откуда:
Сообщений: 1091
X11
А Если у ТС версия языка без хелперов?

Тогда пущай срочно апгрейдится. Хоть какая-то с него польза будет.
11 сен 18, 13:29    [21670885]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
QT
Guest
Другой язык - другой набор функций. Нужно "также как где-то там" - напишите/поищите обёртку.
Возможно даже где-то уже есть модуль типа "StrUtilsLikePHP".
26 сен 18, 09:44    [21686290]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 2889
QT,

я перешел с русского на английский, было бы очень удобно, если бы в нем были русские слова, подскажите, может уже запилил кто-то и оно есть в интернетах?
26 сен 18, 10:57    [21686407]     Ответить | Цитировать Сообщить модератору
 Re: Почему нету портированных строковых ф-ций из php в Дельфи?  [new]
QT
Guest
Ваше утрирование переутрировано.

В самом языке в принципе нет функций для работы со строками. Это вопрос используемых библиотек. Вы запрещаете/отрицаете возможность пользования другими библиотеками?
26 сен 18, 13:39    [21686679]     Ответить | Цитировать Сообщить модератору
Все форумы / Delphi Ответить