Perl + Strings

13 отговора 350 прегледа
#1

Perl + Strings

Здравейте,

знае ли някой как най-лесно може в Perl да се работи интензивно със стрингове, тоест да се прави: isascii(), toupper(), reverese() и др. подобни? Вградените в езика възможности са много ограничени за стрингове, или не е така? Има ли стандартен модул за тази цел?

Благодаря предварително!

Отговор
#2

Re: Perl + Strings

Да, зная че ако прочета ще разбера как да го направя. То може да стане и на C и на Python, но нали идеята е да не се преоткрива всеки път колелото? Защо трябва да се пише код за нещо толкова елемнтарно, като например "toupper" на стринг? Не е ли по логично да се каже: String.toupper($mystring)? Не ми се пише библиотека за стрингове, пишат ми се програми....

Отговор
в отговор на hristo #3

Re: Perl + Strings

String.ToUpper има в .NET Framework. По-точно "Blah blah blah".ToUpper() Доколкото знам, има имплементация на Perl за .NET, която сигурно ще ти предостави достъп до този метод

Отговор
в отговор на hristo #4

Re: Perl + Strings

nikoj ne te kara da 4etesh sorsove (makar 4e i tova e mnogo polezno), a osnovnata dokumentacia na perl. kak iskash da pishesh na ezik, na kojto ne znaesh azbukata i osnovnata funcionalnost ?
[линк]

Отговор
в отговор на hristo #5

Re: Perl + Strings

print 'ASCII' if $str =~ /\S+/;
print uc $str;#toupper
$str =~ tr/a-z/A-Z/;#toupper
print reverse $str;

perldoc -U perlfunc
perldoc -U perlfaq

Wsichki drugi ezici bledneqt sprqmo Perl kogato stawa wapros za obrabotka na text.

Отговор
в отговор на raptor #6

Re: Perl + Strings

Йеее... Само дето програма на C# ще може да конвертира от малки до главни букви и кирилица, и какво ли не, без да се налага да се модифицира програмата. А с това $str =~ tr/a-z/A-Z/; на Perl ясно се вижда какво се конвертира

Отговор
в отговор на ironcode #7

Re: Perl + Strings

хехе а откога C# го прави това, и откога Perl ?
Perl е вече на повече от 15 години, а случайно да помниш колко издържа последната "велика" идея на микрософт - COM ? И колко ще издържи поредната им велика идея ?

Отговор
в отговор на perl #8

Re: Perl + Strings

COM го има от 1993-та година, така че е издържал достатъчно, а и ще продължи да се ползва още доста. Поредната им велика идея също ще издържи доста, защото за нея поне направиха опит да я стандартизират. Така че спокойно, има хляб в нея Между другото, .NET поддържа regular expressions, съвместими с тези при Perl 5, а освен това за тях има и някои нововъведения, които другаде ги няма.

Отговор
в отговор на ironcode #9

Aide stiga gluposti

Aide stiga obshti prikazki.
Hristo potursi documentaciq za regulqrni izrazi w perl. Ako si na *NIX -
man perlrequick
man perlretut

Ot tam natatuk nqma neshto koeto ne mojesh da prawish s tekst - ako iskash si go wurzwai na flionga.
Preporuchwam ti Perl Cookbook - tam mojesh da namerish wsichko kakwoto ti trqbwa po powoda.

A towa deto .NET ili Java weche imali regulqrni izrazi, mi imat. I pak sa po kuci ot tezi na Perl. (pone ot lichen opit s tezi na Java)

Отговор
в отговор на ironcode #10

Re: Perl + Strings

Ami mislq che trqbwa na wsichki da im stane qsno dori i na C-sharpowci, kakwo kazwat :

Perl compatible regular expression - poweche ot towa kwo da kava :")
Zashto im sa "compatible" regex.
A da ne goworim che kakwito i regex-biblioteki da imat pri nikoi ot drugite ezici regex ne se polzwat tolkowa lesno i estestweno... w smisal che sa dobawka kam ezika a ne neotmenna chast ot nego..

A w Perl6 se podgotwqt "Rules" toest "regular-expressions" na kwadrat, koito naprawo ostawqt wsichki ostanali ezici da mu duhat prahta.... otnowo :")
Za po luboznatelnite :
[линк]

Sledql sam diskusii na hora koito razbirat ot tiq raboti, naistina C# move da ima nqkoi po advanced features ot Java. Ama ne trqbwa da zabrawqme che izleze dosta po kysno ot Java, toest imashe wazmovnost da izbegne tqhnite greshki.(plus towa ot diskusiite sam razbral che C#-VM kakto i Java-VM ne sa podhodqshti za dynamic type languages kato perl,python,ruby etc...)
I wtoro po wavno dori i da go standartizirat donqkade (pak po tehniq si MS nachicn) fact e che C# ne e mnogoplatforment.
Ima nqkakwi opiti s Mono project ama ako wzeme che stane populqren, MS ste im naprawi pak nqkoi nomer..

Отговор
в отговор на ironcode #11

Re: Perl + Strings

hmmm.......

perldoc -U perllocale

Отговор
в отговор на Pavel #12

Re: Aide stiga gluposti

В Java може и да са куци, но това не значи, че в .NET също са

Отговор
в отговор на raptor #13

Re: Perl + Strings

Предполагам, че като говориш за C#, имаш предвид .NET. Common Language Runtime, както и Base Class Library, са многоплатформени, стандартизирани от ECMA, има вървяща имплементация за FreeBSD, а ще има и за други операционни системи. А иначе C# си е език като език - много добър, и ще се утвърди, пък дори и да не става дума за .NET.

Отговор
в отговор на ironcode #14

Re: Perl + Strings

Iteresno sto li ne prawqt za Linux :"). I dokolkoto razbrah towa koeto sa dali za standartizaciq na ECMA waobshte ne e wsichko koeto e neobhodimo.... a samo koeto im otyrwa na tqh..
[линк]

Отговор