ᲙომპიუტერებიᲞროგრამირების

Რეგულარული გამოსახულებანი (PHP). PHP: რეგულარული გამოსახულებების მაგალითები

როგორ დიდი და მრავალფეროვანი სამყაროს ინფორმაცია, ისევე, როგორც სწრაფად, ფართოვდება და ვითარდება. გადაწყვეტილება - მხოლოდ წერტილი საერთო პროცესში მოძრაობა. ცოდნა და გამოცდილება, რათა შესაძლებელი, რომ გავიგოთ, პროცესი, რომ მიზნის მისაღწევად, მაგრამ არასდროს - არ არის შედეგი მისი მიღწევები. საეჭვოა, რომ ჩვენ შეგვიძლია ვთქვათ, რომ ახლო მომავალში შედეგი, მაგრამ მნიშვნელოვანია, რომ პროცესი სწრაფვა ეს არის მნიშვნელოვანი და ობიექტურად აუცილებელი პროცესი.

"სურვილი და / ან ბევრი ფული" არ ქმნის ალგორითმი, რომელსაც შეუძლია, და რა თქმა უნდა, "თავისუფალი" კაცი აკეთებს, განსაკუთრებით მაშინ, როდესაც იგი არ ფიქრობს იმაზე, თუ რას აკეთებდა. ნებისმიერ სიტუაციაში ინფორმაციის პრობლემა აქვს მინიმუმ ერთი ბრმა ადგილზე, მაგრამ მას, როგორც წესი, მაშინვე, სხვები გაწმენდა stains ჩანს, და არ არის აუცილებელი, რომ ისინი ყველა თეთრი ყვავილები.

ინტერნეტ ტექნოლოგია გაამარტივა ინფორმაციის ხელმისაწვდომობას, მაგრამ საკითხავია - როგორ დააყენა, რომელსაც სასურველი - არ გამარტივდება, და შეიძინა ახალი "მოცულობა" მუშაობა. მიუხედავად იმისა, რომ PHP რეგულარული გამოხატვის უფსკრული ნათლად არ არის ამოწურული, ისინი მნიშვნელოვანი ნაბიჯია.

მარტივი ფუნქციების + ალგორითმი = ნიმუში

შეთავაზება რეგულარული გამოსახულებების, PHP ალგორითმი მნიშვნელოვნად ამცირებს შინაარსის, მაგრამ ჩვეულებრივი ძებნის ფუნქცია / ჩანაცვლება და ალგორითმები ი არ დაკარგა მნიშვნელობა. ახალი იდეები არ ნაბიჯს ინფორმაცია რევოლუცია. საუკეთესო, რომელიც შეიძლება მოსალოდნელია - კომპაქტ კოდი და გაზრდის დეველოპერი უნარი ჩამოაყალიბოს ძიებნის სწორად.

თქვენ უნდა იცოდეს, და ვრცელდება PHP რეგულარული გამოსახულებების. მაგალითები დამაჯერებელი და ეფექტური. მაგრამ ეს არ უნდა მისცეს ანგარიში, რომ სამყაროს ახალი საძიებო სისტემა, სიმძიმის ცენტრი გადაინაცვლებს ნიმუში - ერთგვარი მექანიზმი, თუმცა რეალურად შეცვალა კომპლექტი მარტივი ძებნის ფუნქცია, პირობები, მარყუჟების, და სხვა ოპერატორები.

აქვს:

  • ხარისხის და თანამედროვე ინსტრუმენტი - ეს არის კარგი;
  • ვხედავ და გამოიყენოს გამოცდილება კოლეგებთან ამ საკითხზე;
  • აერთიანებს რეალობა და ვირტუალური იდეა - წარმატების გარანტია.

მისაღწევად ცოდნა აუცილებელი იყო, უნდა გვესმოდეს, რომ პრობლემა, უნდა გადაწყდეს ეს, ხშირად უფრო მნიშვნელოვანია, ვიდრე კონკრეტული შედეგი.

რეგულარული გამოსახულებების PHP წარმოდგენილია მთელი რიგი ფუნქციების ენის სინტაქსი და ბევრი სასარგებლო მაგალითები ინტერნეტში. იმის გამო, რომ სინტაქსი კონკრეტული პროგრამა პარამეტრები შემოიფარგლება მხოლოდ წარმოსახვა დეველოპერი, მაგრამ sleuet გვახსოვდეს, რომ არა ყველა თარგები იმუშავებს. გამოყენება PHP დადასტურება რეგულარული გამოსახულებების აუცილებელია.

მარტივი ძიება ხასიათი (string)

სიმბოლო - ეს არ არის ყოველთვის ერთი ბაიტი, და ხშირად სიმბოლო, როგორც ჩიპი, აქვს ზუსტი მნიშვნელობა გარდა. კოდირება განსაზღვრავს ჩანს სიმბოლოების კოდი განსხვავებულად. სიმბოლო შეიძლება ჰქონდეს რამდენიმე ვარიანტი: "$" = "დოლარი" = "დოლარი", ... - არის ზუსტი მნიშვნელობით, რომ სადღაც რაღაც, მაგრამ არ არის აუცილებელი ახლოს, იმის გამო, რომ ვალუტაში. თუმცა, ზუსტი მნიშვნელობით შეიძლება ტყუილი ცვლადი PHP, რომელიც ყოველთვის იწყება ხასიათი "$", მაგრამ ვერ იწყება "დოლარი" და "დოლარი".

სიმბოლო პროგრამა შეიძლება იყოს ფუნქცია სახელი (string) კონტექსტში: აღიარება და შეასრულოს - ეს არის დინამიური ობიექტზე ორიენტირებული პროგრამირების, როდესაც სტრუქტურა, ფუნქციები, PHP რეგულარული გამოსახულებების გამოიყენება უშუალოდ გადაწყვეტილების მიღების. ნაპოვნია სიმბოლო "გამოდის", რომელიც, თავისთავად განსაზღვრავს, თუ რა უნდა გავაკეთოთ, რომ ადგილი, სადაც ი, და გზა ის არის, "იგი მიიჩნევს" საჭირო.

ძიება ხასიათი / ხაზი - არ არის ისეთი მარტივი ვარჯიში და მეტი ინფორმაციით, ნათელი უკეთესი. ეს ყოველთვის არ არის საჭირო, რათა იპოვოს ათი საუკეთესო სურსათის ფასების, აირჩიოს გემრიელი რეცეპტები დაბადების დღე ტორტი, და რათა დადგინდეს კონტრაქტორი ცრუ ჭერი.

ხშირად აუცილებელია ოპტიმიზაცია მარტივი ალგორითმები არ არის მარტივი არითმეტიკული ინფორმაცია ან რთულ პირობებში, როდესაც სასურველი ხასიათი აირჩიოს ბაზაში, და ხაზი, რომელიც აუცილებელია, რათა იპოვოს - ასი საიტებზე. ფასი უდრის აირჩიეთ ხასიათი იმ დროს ნიმუში მონაცემთა ბაზა, და ფასი სად უნდა გამოიყურებოდეს - ძებნის დროს ყბადაღებული ასობით საიტებზე.

Lone სიმბოლო - ეს არ არის ფრაზა, და არა რამდენიმე სასჯელს, იგი შეიძლება იყოს სადმე და როგორც პატარა, როგორც სასურველი. როგორ განვსაზღვროთ რა იპოვეს არის სასურველი?

მაგალითი: ძებნის ფასები

უბრალოდ ტექსტს "$" სიმბოლო - პატარა. შეამოწმეთ, რომ მის წინაშე ნომერი, ეს ყოველთვის არ არის საკმარისი. თუ თქვენ გთავაზობთ წერტილი ან ნომერი ადრე სიმბოლო "$" არის გარანტია იმისა, რომ ფასები, რომელიც ფულის ნიშნები წინ არ იქნება მხედველობაში მიღებული. ასევე არსებობს გამოტოვებული ფასი, რომელიც ზოგადად არ არის მითითებული ვალუტაში, მაგრამ გვერდზე რომ ეს არის ნათელი მითითებები.

ზოგადად, პრობლემის გადაწყვეტა ჩვეულ იბერება მიღმა აღიარება ალგორითმი და დროს მოითხოვს. იმავდროულად, გამოყენებით რეგულარული გამოხატვის, რაოდენობის PHP ნახავთ პრობლემა არ არსებობს.

$ CContents = preg_match_all ( "/ [0-9] + ([\ $] | usd | y \ £ \ | ue) {1} / i.";

"შეხედეთ e-mail - 2 დოლარი;
";
"ამ e-mail - 2u.e.;
";
"სამუშაო e-mail - ue2;
";
"შემოწმება e-mail - $ 13", $ aResult);
. '; ". დაინგრა ( ',', $ aResult [0]). "
".

პასუხი: "2 2 დოლარი, 2u.e.", მაგრამ ჩამიტარეს ხაზი: "შემოწმება e-mail - $ 13."

უზრუნველყოფს ყოფნა ნიმუში წინ ან უკან ხასიათი, შეგიძლიათ წარმატების მიღწევა შეიძლება ხშირ შემთხვევაში.

$ CContents = preg_match_all ( "/ ([0-9] + ([\ $] | usd | y \ £ \ |. ევროკავშირის) {1}) | (([$] | usd | y \ £ \. | ue) {1} [0-9] +) / i ";
"შეხედეთ e-mail - 2 დოლარი;
";
"ამ e-mail - 2u.e.;
";
"სამუშაო e-mail - ue2;
";
"შემოწმება e-mail - $ 13", $ aResult);
. '; ". დაინგრა ( ',', $ aResult [0]). "
".

შედეგი: "4; 2 დოლარი, 2u.e., ue2, $ 13."

მომხმარებლის გაუთვალისწინებელი ლოგიკა

რეგულარული გამოხატვის PHP შეთავაზებანი, ისევე, როგორც სხვა ინსტრუმენტები, მაგრამ ეს არ არის საჭირო მიმართოს ისინი მისი წესების ან სხვა ფუნქციები ამას სინტაქსი გზა.

შეიძლება ადრე დასაწყისში ძებნა საჭირო მივმართოთ მასივი, და ადგილი, სადაც ჩვენ ვეძებთ, ჩაიშალა შევიდა კომპონენტები თანახმად, წინასწარი კრიტერიუმები. მხოლოდ რამდენიმე აფეთქდეს () და დაინგრა () ხშირად ამარტივებს და სიჩქარის გადაწყვეტილება.

მაგალითად, შედეგად წინასწარი მუშაობა ჩამოყალიბდა მასივი სტრიქონები (მონაცემები) რაიონში, თუ რამდენი კარტოფილი შეგროვებული ყველა სოფელში: Unknown ImyaDerevnya და მოცულობის შეგროვებული და თუ ქვეყანაში გადის რამდენიმე კომპანიების მასივი სტრიქონები არის ImyaDerevnya.ImyaPredpriyatie და ღირებულება მეშვეობით "; " და ასე შემდეგ ყველა საწარმოები. გამოვთვალოთ საერთო თანხა შეაგროვა ამ შემთხვევაში არ იქნება შესაძლებელი, მაგრამ თუ impode ( ";", $ aResult), იქნება ერთ-ერთი ხანგრძლივი ხაზი, რომელშიც წყვილი - ImyaDerevnya / ImyaDerevnya.ImyaPredpriyatie - კრებული ზომა - გადაეცემა მეშვეობით ";". გააკეთოთ საპირისპირო on შედეგად, აფეთქდეს ( ";", $ aResult) - მასივი ყველა, ვინც შეგროვებული და როგორ შეაგროვა და შემდეგ მოხსნის ხაზები ყველა არასამთავრობო რიცხვითი გმირები, ჩვენ მხოლოდ ნომრები, თანხა, რომელიც არის საერთო მოცულობის შეგროვდა.

ამ მაგალითად, რეგულარული გამოხატვის PHP საშუალებას არ გამოიყურება ძალიან ბევრი, ისინი ადვილი და ხელმისაწვდომი ამონაწერი სასურველი რიცხვითი ღირებულებებს. სწრაფად და ეფექტურად, არ აქვს მნიშვნელობა, რამდენი ხანი შეიძლება სახელები სოფლებში და ბიზნესის. ეს გამოსავალი არ არის იდეალური, მაგრამ ეს გვიჩვენებს, რომ ყოველთვის არ დაიცვას წესები უნდა იყოს. ხშირად შესაძლებელია, რომ მივაღწიოთ სასურველ უჩვეულო გზით.

გასანეიტრალებლად ტექნიკური მხარე, კოდირების

სინტაქსი ალგორითმი არ უთქვამს, თუ როგორ გამოიყურება სინამდვილეში. თუმცა, უზრუნველყოფს იგივე კოდირების გვერდზე, და რიგები script (რომელიც ცდილობდა, რომელშიც images) შეგიძლიათ plunge შევიდა პრობლემა ის არის, მისი ტექნიკური ასპექტები.

ერთი უნდა არა მხოლოდ იცის, რა უნდა ვეძებოთ, მაგრამ სადაც ამის გაკეთება, როდესაც, რამდენად, რა უნდა შეიცვალოს და როგორ. ფორმალურად PHP რეგულარული გამოსახულებების შესრულებული, როგორც სრული სრული გამორჩეული მექანიზმი საკუთარი, არამედ მრავალი მიზეზის გამო, რეალიზაციის მისი კოლეგები მრავალ ენაზე სხვადასხვა. როგორც წესი, სანამ გადაადგილება კონკრეტული ნიმუში კონკრეტული ინსტრუმენტი გარემოს კონკრეტული ამოცანა, აუცილებელია განახორციელოს მაღალი ხარისხის ადაპტაციის, შეამოწმოს ყველა შესაძლო ვარიანტი წყაროს მონაცემები.

მაშინაც კი, თუ თქვენ იყენებთ საკუთარი გამოცდილება ვითარდება PHP, რეგულარული გამოსახულებების, მაგალითები, თარგები და დიზაინი მოითხოვს ფრთხილად შემოწმებას. დინამიურად შეცვლის ენის ფუნქციონირება, სინტაქსი და runtime.

სტრუქტურა და შინაარსი თარგი

რა იყო ადრე წერილობითი სახით კომბინაცია ძებნის ფუნქცია, პირობით, შეცვლის ოპერაცია, ჩადეთ, წაშლის, არის სიმებიანი პერსონაჟების მიხედვით გარკვეული წესები - რეგულარული გამოხატვის ნიმუში. ფაქტობრივად, მნიშვნელოვანი თანხა კოდირებულია გარკვეული გზა და შესრულებული კონკრეტული წესები.

ისევე, როგორც შეუძლებელია რაიმე გამართვის ენის ოპერატორი, თქვენ ვერ გამართვის რეგულარული გამოხატვის ნიმუში, ეს პროცესი შეიძლება მხოლოდ ვაპირებ. როგორც წესი, მიღებული ვერსია: სამუშაოები - არ მუშაობს. სინტაქსი ძალიან მარტივია, მიუხედავად იმისა, რომ მისი აღქმა, განსაკუთრებით დასაწყისში, ძალიან რთულია.

მაგალითად, მარტივი გამოხატვის

მარტივი განსახიერება, template სიას სიმებიანი:

$ CContents = preg_match ( "/ asdf / i", "asdf", $ aResult). '; ". დაინგრა ( ',', $ aResult).

შედეგი იქნება "1; asdf", რადგან ფუნქცია ასრულებს ოპერაცია პირველად შეხვდა შესაბამისი თარგი. შედეგი იქნება იგივე, თუ დავაკვირდებით ხაზი "aaaasdf" შეესაბამება "zzzasdfvvv". თუ, თქვენ შეიტანეთ პირველი ან / და ბოლო ხასიათი, შედეგი იქნება ნათელი:

$ CContents = preg_match ( "/ ^ asdf / i", "asdf", $ aResult). '; ". დაინგრა ( ',', $ aResult). "
';
$ CContents. = Preg_match ( "/ asdf $ /", "asdf", $ aResult). '; ". დაინგრა ( ',', $ aResult). "
".

შედეგი იქნება: 1; asdf1; asdf.

სიმბოლოები "*" და "$" მიუთითებს, სად უნდა დაიწყოს და დამთავრებული ნიმუში. შედეგი preg_match ფუნქცია - მატჩების რაოდენობით, ეს შეიძლება იყოს 0, 1, ან ცრუ, თუ შეცდომა არის აღმოჩენილი. მესამე ვარიანტი - მასივი - განთავსდეს მხოლოდ ი ელემენტს. იმ შემთხვევაში, თუ იყენებთ preg_match_all function () ძებნა გრძელდება ბოლომდე ხაზი.

$ CContents = preg_match ( "/ asdf / i", "asdf123asdf456asdf789", $ aResult). '; ". დაინგრა ( ',', $ aResult). "
';
$ CContents. = Preg_match_all ( "/ asdf / i", "asdf123asdf456asdf789", $ aResult). '; ". დაინგრა ( ',', $ aResult [0]). "
".

შედეგი:

1; asdf
3; asdf, asdf, asdf.

თუ არ გამოიყენოს სპეციალური ინსტრუქციები, თითოეული ხასიათი თავად განსაზღვრავს და მისი ადგილი, მიუხედავად იმისა, ხაზი კოდირების და template კოდირება. პროგრამისტი უნდა უზრუნველყოს, რომ კოდირების ამ ელემენტების იყო სწორი ერთმანეთთან და კოდირების გვერდზე.

PHP ფუნქციების მუშაობის რეგულარული გამოსახულებების

რეგულარული გამოსახულებების for PHP წარმოადგენს ხასიათი string ჩაწერილი გარკვეული გზა. როგორც წესი, ანალოგიით სხვა პროგრამირების ენებზე, ისინი დაწერილი სიმბოლოები "/" ... "/" და მოთავსებული ბრჭყალების, შეგიძლიათ გამოიყენოთ ერთი ან ორმაგი დამოკიდებულია ალგორითმი.

ძირითადი ფუნქცია php preg მატჩი რეგულარული გამოსახულებების იყენებს ორივე ნიმუში მატჩი და აჩერებს პირველ ადგილმდებარეობა, ვარიანტი მათი ერთად სუფიქსი _all პოულობს ყველა მატჩები და შედეგები მასივი შესახებ. ფუნქცია preg შეცვლის ცვლის ყოველი მატჩი თარგი, მას შეუძლია მუშაობა მასივები, რომელიც საშუალებას ძებნის დიზაინი და შესრულება ჩანაცვლება სხვადასხვა ვარიანტები.

საინტერესო ვარიანტები მუშაობის რეგულარული გამოსახულებების შეიძლება შემუშავებული გამოყენებით preg_replace_callback ფუნქცია, რომელიც იღებს არ შეცვლის ტექსტი და სახელი ფუნქცია, რომელიც განახორციელოს ასეთი ჩანაცვლება. გარდა ამისა, პრაქტიკული ღირებულება შეგიძლიათ განახორციელოს მექანიზმები ნახოთ ნიმუში, რომ განვითარებისა და debugging ბოლო მნიშვნელოვან როლს თამაშობს.

სფერო რეგულარული გამოსახულებების

მას შემდეგ, რაც ჰიპერტექსტის ენებზე გაფორმდება ინფორმაცია უფრო დიდი ზომით, ისინი ამოსავალი მასალა. განვითარებული დიდი რაოდენობით შაბლონები და დიზაინით, რომელიც საშუალებას დამუშავებას დიდი რაოდენობით მონაცემები ეფექტურად. მნიშვნელოვანი ნაწილი ამ სამუშაოს ხორციელდება მექანიზმების ჩაშენებული სხვადასხვა შინაარსის მართვის სისტემები (CMS).

გასაკვირი არ არის, ბევრი CMS გახდეს დე ფაქტო სტანდარტები ობიექტს და მიმდინარეობს თან ახლავს (განახლებული) პროგრამული უზრუნველყოფის კომპანიებს, ისინი არ, რომ აუცილებელია განახორციელოს განვითარების ნიმუშების საკუთარი. თუმცა, გარეთ ასეთი სისტემები აქვთ გამოცდილება რეგულარული გამოსახულებების ძალიან სასარგებლოა.

რეგულარული გამოსახულებების და რეალური ინფორმაცია

მნიშვნელოვანი გამოყენების რეგულარული გამოსახულებების PHP ბიბლიოთეკების ჩამოყალიბდა სამყაროს PHPOffice. მუშაობა დოკუმენტები, ცხრილები, და ყოველთვის ჰქონდა მნიშვნელოვანი და OOXML სტანდარტული შესაძლებელია არა მხოლოდ დემონტაჟს ფაქტობრივი დოკუმენტები, არამედ განსაზღვრავენ მათი პროგრამა.

მადლობა განვითარების ჰიპერტექსტის და PHP ენაზე, კერძოდ, არ არის რეალური შესაძლებლობა ავტომატიზაცია "წარმოების" დოკუმენტების "სტანდარტული ფორმა", მაგალითად, ანგარიშფაქტურების გადახდის, ანგარიშები, ბიზნეს გეგმების და სხვა ინფორმაცია, ობიექტების, სტრუქტურა და შინაარსი რეალურად ემორჩილებიან ფორმალიზაცია და ავტომატიზაცია.

ამასთან დაკავშირებით განცხადება აღწერს ენის OOXML განვითარების პროცესში რეგულარული გამოსახულებების საკმაოდ განსხვავდება ტრადიციული სამუშაო მარკირებას ენებზე HTML და CSS, პირველ რიგში. ფაქტობრივი დოკუმენტი, გარდა მარკირების და გარდა ამისა, ფაქტობრივი შინაარსი აქვს ბევრი დეტალი. მაგალითად, დოკუმენტი, რომელიც ავტომატურად შეიქმნა პროგრამა, ექნება ძლიერი და ზუსტი შინაარსი. დოკუმენტი იქმნება ან პირი, მკურნალობა, ექნება შინაარსის, შეიღება მეტი პლურალიზმი tags. ნებისმიერი სამუშაო დოკუმენტს იწვევს ის ფაქტი, რომ სემანტიკა ეს შეიძლება იყოს ერთი, მაგრამ მოხატული სხვადასხვა რაოდენობით სხვადასხვა დიზაინის.

ბუნებრივი ინფორმაცია და სიტუაცია

ადამიანი ყოველთვის დაინტერესებული პრობლემის გადაწყვეტა, რომელიც დადგა ინფორმაცია და, როგორც შედეგი, იგივე ინფორმაცია მიეცემა. წარმოგიდგენთ განცხადებას პრობლემა სახით დოკუმენტი, პირი იღებს კონკრეტული სემანტიკა, რომელიც დაზუსტება ექსპერტები (ცვლილება განმარტა, ფორმულირება, წაშლა, რედაქტირება) არა მხოლოდ მივყავართ სხვადასხვა ვერსიები დოკუმენტი, არამედ მის ვერსიებს სხვადასხვა შინაარსის.

კერძოდ, დავალებას კომპლექტი ფრაზა "მოგვარება მოედანზე uranenie" შემდეგ რედაქტირების ასე გამოიყურება: "გადაწყვიტოს კვადრატული განტოლება". თუ პირველი პირველი შეცდომა იქნა შესწორებული და შემდეგ მეორე, შემდეგ ბუნებრივი ინფორმაციის OOXML სტილი შეიძლება გამოიყურებოდეს: "[მოგვარდეს] [] [კვადრატულ] [e] [] [cheers] [b] [nenie]", მაგრამ ეს არ გარანტი, რომ ეს არის ამოცანა გამოჩნდება tags OOXML (ფრჩხილებში მიბაძოს ფრჩხილებში tags).

იმისათვის, რომ ერთად ინფორმაცია შეიძლება ადვილად ყოველი ამოცანა რედაქტირების პროცესი, მაგრამ ყოველ ჯერზე ეს პროცედურა იქნება შესრულებული სხვადასხვა ალგორითმები. რეგულარული გამოსახულებების, როგორც ერთგვარი ინსტრუმენტი ფორმალიზაცია ინფორმაცია პრობლემები გახდა, ფაქტობრივად, ფეხით ბილიკები ფორმალური სტრუქტურები ჰიპერტექსტის ბუნებრივი ინფორმაცია.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ka.birmiss.com. Theme powered by WordPress.