คำถามติดแท็ก perl

Perl เป็นภาษาโปรแกรมเชิงพลวัตขั้นสูงและมีวัตถุประสงค์ทั่วไปซึ่งเป็นที่รู้จักกันดีในเรื่องการสนับสนุนการแสดงออกปกติและความสามารถในการวิเคราะห์สตริง โปรดใช้แท็กนี้สำหรับคำถามเกี่ยวกับ Perl โดยทั่วไป สำหรับสิ่งต่าง ๆ ที่เกี่ยวข้องกับภาษาใหม่ (แต่เกี่ยวข้อง) Raku (เดิมชื่อ "Perl 6") โปรดใช้แท็ก raku สำหรับนิพจน์ทั่วไปสไตล์ Perl ในภาษาอื่น ๆ ให้ใช้แท็ก regex หรือหากเป็นไปตามไลบรารี PCRE แท็ก pcre


8
วิธีที่ดีที่สุดในการให้ตัวแปรเป็นค่าเริ่มต้น (จำลอง Perl ||, || =)
ฉันรักการทำเรียงลำดับของสิ่งนี้ใน Perl: $foo = $bar || $bazเพื่อกำหนด$bazไป$fooถ้า$barว่างเปล่าหรือไม่ได้กำหนด คุณยังมี$foo ||= $bletchเท่านั้นที่จะกำหนด$bletchไป$fooถ้า$fooไม่ได้กำหนดไว้หรือว่างเปล่า ผู้ดำเนินการที่เกี่ยวข้องในสถานการณ์นี้น่าเบื่อและน่าเบื่อ แน่นอนว่ามีวิธีที่เรียบง่ายและสวยงามใน PHP? หรือคำตอบเดียวคือฟังก์ชันกำหนดเองที่ใช้ isset ()?

5
แสดงไฟล์ PDF ในเบราว์เซอร์ของผู้ใช้ผ่าน PHP / Perl
ฉันต้องการแสดงไฟล์ PDF ให้กับผู้ใช้ของฉัน เหตุผลที่ฉันใช้ cgi เพื่อแสดง pdf คือฉันต้องการติดตามการคลิกสำหรับ pdf และปิดบังตำแหน่งจริงของ pdf ที่บันทึกไว้ ฉันค้นหาบนอินเทอร์เน็ตและพบเพียงวิธีแสดงกล่องโต้ตอบบันทึกให้กับผู้ใช้และสร้าง pdf เท่านั้นไม่แสดงไฟล์ให้ผู้ใช้เห็น สิ่งที่ฉันต้องการคือแสดงให้ผู้ใช้เห็นไฟล์ pdf ของฉันไม่ใช่การสร้างหรือดาวน์โหลด pdf นี่คือสิ่งที่ฉันได้รับจากเอกสาร php อย่างเป็นทางการ: <?php header('Content-type: application/pdf'); readfile('the.pdf'); ?> รหัส perl ผลการค้นหาของ Google ของฉันด้วย: open(PDF, "the.pdf") or die "could not open PDF [$!]"; binmode PDF; my $output = do { local $/; …
121 php  perl  pdf 

17
ใน Perl ฉันจะอ่านไฟล์ทั้งหมดเป็นสตริงได้อย่างไร
ฉันกำลังพยายามเปิดไฟล์. html เป็นสตริงยาวขนาดใหญ่ นี่คือสิ่งที่ฉันมี: open(FILE, 'index.html') or die "Can't read file 'filename' [$!]\n"; $document = <FILE>; close (FILE); print $document; ซึ่งส่งผลให้: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN อย่างไรก็ตามฉันต้องการให้ผลลัพธ์มีลักษณะดังนี้: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> ด้วยวิธีนี้ฉันสามารถค้นหาทั้งเอกสารได้ง่ายขึ้น
118 string  perl  slurp 

4
เหตุใดต้นแบบฟังก์ชันของ Perl 5 จึงไม่ดี
ในคำถาม Stack Overflow อื่น Leon Timmermansยืนยันว่า: ฉันขอแนะนำว่าอย่าใช้ต้นแบบ พวกเขามีการใช้งาน แต่ไม่ใช่สำหรับกรณีส่วนใหญ่และไม่แน่นอนในกรณีนี้ เหตุใดจึงอาจเป็นจริง (หรืออย่างอื่น) ฉันมักจะจัดหาต้นแบบสำหรับฟังก์ชัน Perl ของฉันและฉันไม่เคยเห็นใครพูดอะไรไม่ดีเกี่ยวกับการใช้งานมาก่อน
116 perl  function  prototype 

10
ฉันจะบอกให้ CPAN ติดตั้งการอ้างอิงทั้งหมดได้อย่างไร
ฉันจะบอกให้ CPAN ติดตั้งการอ้างอิงทั้งหมดได้อย่างไร ฉันลองตั้งค่าสิ่งเหล่านี้ในcpan: cpan> o conf prerequisites_policy follow cpan> o conf commit ฉันยังต้องตอบว่า "y" สองสามครั้ง (แต่น้อยกว่าที่เคยรู้สึก) มีวิธีที่จะทำให้ดำเนินการติดตั้งได้เสมอหรือไม่? ฉันต้องการที่จะทำให้มันไม่ต้องใส่ ดูเหมือนว่าฉันต้องการตั้งค่าสถานะไว้วางใจ CPAN เสมอว่าทำในสิ่งที่ถูกต้องและถ้ามันแนะนำคำตอบฉันก็อยากจะทำตามนั้น (มักจะตีEnterเมื่อถามอะไรบางอย่าง)
113 perl  dependencies  cpan 

3
ตรวจสอบว่าสตริงมีสตริงย่อยหรือไม่
ฉันจะตรวจสอบได้อย่างไรว่าสตริงที่ระบุมีสตริงย่อยโดยใช้ Perl หรือไม่ โดยเฉพาะอย่างยิ่งฉันต้องการดูว่าs1.domain.comมีอยู่ในตัวแปรสตริงที่กำหนดหรือไม่

8
ฉันจะตรวจสอบได้อย่างไรว่ามีไฟล์อยู่ใน Perl หรือไม่?
ฉันมีเส้นทางที่สัมพันธ์กัน $base_path = "input/myMock.TGZ"; myMock.TGZคือชื่อไฟล์ที่อยู่ในโฟลเดอร์อินพุต ชื่อไฟล์สามารถเปลี่ยนแปลงได้ $base_pathแต่เส้นทางที่จะถูกเก็บไว้เสมอใน ฉันต้องการตรวจสอบว่ามีไฟล์อยู่ในไฟล์$base_path.
112 perl 


6
ฉันจะส่งออก UTF-8 จาก Perl ได้อย่างไร
ฉันพยายามเขียนสคริปต์ Perl โดยใช้ pragma "utf8" และได้ผลลัพธ์ที่ไม่คาดคิด ฉันใช้ Mac OS X 10.5 (Leopard) และกำลังแก้ไขด้วย TextMate การตั้งค่าทั้งหมดของฉันสำหรับทั้งตัวแก้ไขและระบบปฏิบัติการของฉันเป็นค่าเริ่มต้นในการเขียนไฟล์ในรูปแบบ utf-8 อย่างไรก็ตามเมื่อฉันป้อนสิ่งต่อไปนี้ลงในไฟล์ข้อความบันทึกเป็น ".pl" และดำเนินการฉันได้รับ "เพชรที่มีเครื่องหมายคำถาม" ที่เป็นมิตรแทนอักขระที่ไม่ใช่ ASCII #!/usr/bin/env perl -w use strict; use utf8; my $str = 'Çirçös'; print( "$str\n" ); มีความคิดว่าฉันทำอะไรผิดหรือเปล่า? ฉันคาดหวังว่าจะได้ 'Çirçös' ในผลลัพธ์ แต่ฉันได้ ' ir s' แทน
110 perl  unicode  utf-8 

16
การพิมพ์ทุกอย่างยกเว้นฟิลด์แรกด้วย awk
ฉันมีไฟล์ที่มีลักษณะดังนี้: AE United Arab Emirates AG Antigua & Barbuda AN Netherlands Antilles AS American Samoa BA Bosnia and Herzegovina BF Burkina Faso BN Brunei Darussalam และฉันต้องการที่จะกลับคำสั่งพิมพ์ทุกอย่างก่อนยกเว้น $ 1 แล้ว $ 1: United Arab Emirates AE ฉันจะทำเคล็ดลับ "ทุกอย่างยกเว้นช่อง 1" ได้อย่างไร
108 perl  awk  sed 

4
ธง Perl -pe, -pi, -p, -w, -d, -i, -t?
ฉันได้เห็นหลายวิธีในการเรียกใช้รหัสหรือสคริปต์ Perl ด้วยแฟล็กที่แตกต่างกัน อย่างไรก็ตามเมื่อฉันพยายาม google เพื่อดูความหมายของการตั้งค่าสถานะแต่ละรายการส่วนใหญ่ฉันจะได้รับผลลัพธ์ไปยังไซต์ Perl ทั่วไปและไม่พบข้อมูลเฉพาะเกี่ยวกับแฟล็กหรือการใช้งานที่นั่น ด้านล่างนี้คือค่าสถานะที่ฉันพบบ่อยที่สุดและฉันไม่รู้ว่าหมายถึงอะไร: perl -pe perl -pi perl -p Perl -w perl -d perl -i perl -t ฉันจะขอบคุณมากถ้าคุณบอกฉันว่าแต่ละความหมายและบางกรณีใช้สำหรับพวกเขาหรืออย่างน้อยก็บอกวิธีการค้นหาความหมายของพวกเขา
107 perl  command-line  flags 

6
การหลีกเลี่ยงเครื่องหมายทับในนิพจน์ทั่วไป
คำถามของฉันเป็นคำถามง่ายๆและเป็นเรื่องเกี่ยวกับการหลบหนีของนิพจน์ทั่วไป คุณต้องหนีเครื่องหมายทับ/ในนิพจน์ทั่วไปหรือไม่? แล้วคุณจะไปทำมันได้อย่างไร?
107 regex  perl  escaping 

9
วิธีใดที่ปลอดภัยที่สุดในการทำซ้ำผ่านคีย์ของแฮช Perl?
หากฉันมีแฮช Perl ที่มีคู่ (คีย์, ค่า) จำนวนมากฉันควรใช้วิธีใดในการวนซ้ำผ่านคีย์ทั้งหมด ฉันเคยได้ยินมาว่าการใช้eachอาจมีผลข้างเคียงที่ไม่ได้ตั้งใจในทางใดทางหนึ่ง เป็นเช่นนั้นจริงหรือไม่และเป็นหนึ่งในสองวิธีต่อไปนี้ที่ดีที่สุดหรือมีวิธีที่ดีกว่านี้? # Method 1 while (my ($key, $value) = each(%hash)) { # Something } # Method 2 foreach my $key (keys(%hash)) { # Something }
107 perl  hash  iteration  each 

8
ทำไมต้องใช้คำเตือนและคำเตือนที่เข้มงวด?
สำหรับฉันแล้วดูเหมือนว่าคำถามหลายข้อในแท็ก Perl สามารถแก้ไขได้หากผู้คนใช้: use strict; use warnings; ฉันคิดว่าบางคนคิดว่าสิ่งเหล่านี้คล้ายกับวงล้อฝึกหัดหรือภาวะแทรกซ้อนที่ไม่จำเป็นซึ่งไม่เป็นความจริงอย่างชัดเจนเนื่องจากแม้แต่โปรแกรมเมอร์ Perl ที่มีทักษะสูงก็ใช้มัน ดูเหมือนว่าคนส่วนใหญ่ที่มีความเชี่ยวชาญใน Perl มักจะใช้ pragmas ทั้งสองนี้ในขณะที่ผู้ที่จะได้รับประโยชน์สูงสุดจากการใช้พวกเขาแทบจะไม่ทำ ดังนั้นผมคิดว่ามันจะเป็นความคิดที่ดีที่จะมีคำถามที่จะเชื่อมโยงไปยังเมื่อกระตุ้นให้ประชาชนและuse strictwarnings เหตุใดนักพัฒนา Perl จึงควรuse strictและwarnings?
105 perl 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.