1
|
Програмиране / Web development / Re: Perl регулярен израз
|
-: Apr 12, 2012, 15:56
|
Мерси The_Ghost Твоя скрипт стана и между другото е доста симпатичен, ще го изплагиатствам за моите нужди. И все пак ме дразни защо GeSHi (Perl): @FormToArray = split (/(?=\d+)/, $value);
в единия случай запазва разделителя, а на хостинга всяка цифра я шляпа като отделен елемент.
|
|
|
2
|
Програмиране / Web development / Perl регулярен израз
|
-: Apr 12, 2012, 12:52
|
Здравейте, в момента ползвам един и същ Perl скрипт на няколко машини в къщи и на работа.Версията е This is perl, v5.10.1 (*) built for i486-linux-gnu-thread-multi Тук всичко работи ОК.Този същия скрипт го качих на http://webzone.smshosting.bg като там версията ми показва че е This is perl, v5.8.8 built for x86_64-linux-thread-multi. Ето и скрипта: GeSHi (Perl): #!/usr/bin/perl print "Content-type: text/html \n\n"; print "<head><title>Hello World Form</title><meta content=\"text/html; charset=windows-1251\" http-equiv=\"Content-Type\"></head>"; $value = "345х тетрадки 45х молива 110х райрани ризи"; #print "$value\n <br>"; @FormToArray = split(/(?=\d+)/,$value); foreach $form (@FormToArray){ @arraycontract = split(' ',$form); $countplant = shift(@arraycontract); $contractplant = join(' ',@arraycontract); $contractplantlc = lc($contractplant); $countplant =~ s/[^0-9]*//g; print "$countplant $contractplantlc\t <br>"; }
целта е да стане това: 345 тетрадки 45 молива 110 райрани ризи И работи на perl, v5.10.1 Проблема се явява реда @FormToArray = split(/(?=\d+)/,$value); при версия perl, v5.8.8 на хостинга http://webzone.smshosting.bgи по-точно \d+ като на http://webzone.smshosting.bg въобще не зачита знака + и там се показва като 3 4 5 тетрадки 4 5 молива 1 1 0 райрани ризи Интересува ме версията ли на Perl прави проблем, и ако има друг начин по който да тръгне скрипта там. Няма да се обидя и ако някой коментира кода.
|
|
|
3
|
Програмиране / Общ форум / Re: perl регулярен израз
|
-: Feb 09, 2012, 19:54
|
The GNU extensions not only make both flavors identical. They also adds some new syntax and several brand new features. The shorthand classes \w, \W, \s and \S can be used instead of [[:alnum:]_], [^[:alnum:]_], [[:space:]] and [^[:space:]]. You can use these directly in the regex, but not inside bracket expressions. A backslash inside a bracket expression is always a literal.
Стана, Благодаря много за цитата и помощта, дано бъде полезно и за другите потребители.
|
|
|
4
|
Програмиране / Общ форум / perl регулярен израз
|
-: Feb 09, 2012, 19:35
|
Здравейте, Скрипта искам да го направя да работи със регулярен израз. имам текстов файл със цени, например
грозде 1 гроздова ракия 12 сливи 0.5 сливова ракия 10
целта ми е след като отворя файла и започна да го чета ред по ред, да създам масив от два елемента( за артикула и цената). Затруднява ме името на артикула което е съставено от две думи, например "гроздова ракия". Написах код който е удобен и работи
#!/usr/bin/perl
open PRICE, "price.txt" or die $!;
while (<PRICE>){ @array = split(' ',$_); $priceplant=pop(@array); $plant = join(' ',@array); print "$plant sas cena $priceplant\n"; $hashprice{$plant} = $priceplant;
} print "TEST abcd cost $hashprice{abcd}\n"; close PRICE;
ДРАЗНИ МЕ че не можах да измисля регулярния израз за отделяне само на Артикула, имам в предвид нещо подобно if =~ /(\w+\s\w+)|(\w+\s)/ {print $1 $2}
|
|
|
7
|
Linux секция за начинаещи / Настройка на програми / Re: Различия между nameserver и dns-nameserver
|
-: Jan 24, 2011, 22:22
|
защо имам блед спомен, че тозно над реда в интерфейсис с опцията днс-намесережерс пише че е свързан с ресолфконф
Сигурно имаш впредвид за този ред # dns-* options are implemented by the resolvconf package, if installed Сигурно този ред съм го изтрил още през 2005 година. Тази секция е за начинаещи, и по-добре обясни, отколкото да се правиш на загадъчен, от такива като теб, реномето на сайта и паднал до(НА) земята.
|
|
|
8
|
Linux секция за начинаещи / Настройка на програми / Различия между nameserver и dns-nameserver
|
-: Jan 19, 2011, 20:30
|
Здравейте, ползвам Debian Интересуваме, каква е разликата и какво да имаме в предвид когато попълваме при статичен запис: /etc/network/interfaces опция dns-nameservers /etc/resolv.conf опция nameserver Досега бях на БТК и задавах /etc/network/interfaces опция dns-nameservers След преминаването ми на Blizoo горното не важи и го задавам от /etc/resolv.conf опция nameserver
|
|
|
12
|
Linux секция за начинаещи / Настройка на програми / Openoffice Описание
|
-: Oct 25, 2010, 20:18
|
Здравейте, Днес съм в отпуск. Ползваме масово Office 2007, но поради липса на лиценз сложих на един от новите компютрите OpenOffice на български. Знам че служителката що годе си е оправна и ползва GOOGLE( наблягам на това крещящо), предупредих я, и си вдигнах чукалата да си вея байряка. Още на първия ден ме изненада със елементарен въпрос относно програмата CALC, и то за най-обикновени дублиращи се редове, ползвах стандартния за ВСИЧКИ ВИ отговор: ПОЛЗВАЙ ГУГЪЛ. Е такова чудо, като описание за OpenOffice средно-статистическия българин неможе да намери или аз в първите 30 минути не открих. Ако има такова нещо дайте линк, ХЕЛПА на програмата просто не струва. ПРОСТО не искам да се превръщам в учителка за някакъв офис пакет. Да не говорим че те служителКИТЕ са самоуки по Office2007 и то от чичо ГУГЪЛ.
|
|
|
13
|
Програмиране / Общ форум / b[i] == i[b]
|
-: Oct 21, 2010, 23:02
|
Здравейте. Работя със Dev-C++ под windows. Защо се получава така че в следващия фрагмент от кода се получава един и същ резултат от изхода на cout, като се предполага че втория cout е грешен. GeSHi (C++): #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int b[10]={1,2,3,4,5,6,7,8,9,0}; cout<<b[2]; // изход 3 cout<<2[b]; // изход 3 system("PAUSE"); return EXIT_SUCCESS; }
|
|
|
|