Вверх ↑
Ответов: 537
Рейтинг: 14
#1: 2017-10-28 10:59:21 ЛС | профиль | цитата
Нужно заменить каждую первую букву в предложении на заглавную. Компонент StrCase с включенным FirstChar не работает, меняет только первую букву на заглавную. Нашел в интернете код, переделал в IC. Может кому надо.

Add(MainForm,2953706,21,105)
{
}
Add(StrCase,2768133,77,196)
{
 Type=3
}
Add(InlineCode,5251633,161,119)
{
 @Hint=#25:Большие буквы предложения|
 WorkPoints=#2:go|
 EventPoints=#7:CurText|
 DataPoints=#4:text|
 Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10:   private|0:|9:   public|18:   text:THI_Event;|21:   CurText:THI_Event;|3:   |44:   procedure go(var Data:TData; index:word);|3:   |5: end;|0:|14:implementation|0:|25:procedure THiAsmClass.go;|3:var|14:s, res:string;|10:i:Integer;|28:const delim=['.', '!', '?'];|5:begin|26:s :=(ToStringEvent(text));|9:res :='';|26:for i :=1 to Length(s) do |5:begin|54:if (i=1) or  ((s[i-2] in delim) and (s[i-1]=' ')) then|31:  res :=res+AnsiUpperCase(s[i])|25:     else  res:=res+s[i];|4:end;|25:_hi_OnEvent(CurText,res);|4:end;|4:end.|
 link(CurText,13000147:doText,[])
 link(text,13000147:Text,[(167,107)(209,107)(209,155)(251,155)])
}
Add(Memo,13000147,245,98)
{
 Left=5
 Top=45
 Width=375
 Height=210
 Strings=#214:нужно заменить каждую первую букву в предложении на заглавную. компонент StrCase с включенным FirstChar не работает, меняет только первую букву на заглавную. нашел в интернете код, переделал в  IC. может кому надо.|
 ScrollBars=2
}
Add(Button,12211666,98,119)
{
 Left=10
 Top=10
 link(onClick,5251633:go,[])
}
карма: 4

0