Perl基本構文2022の最速のマスター
この記事はPerlの基本的な要約ですsyntax 2022 Perlをすばやく学ぶこと.
原物はThe Fastest Master of Perl Basic Synta | Perl ABC
必ず次の2行を書いてください.
use warnings エラーを防ぐ警告を表示します.
The print function 文字列を標準出力に出力します.
Perlのcomment .
The my キーワード宣言variable .
PerlコマンドはPerlプログラムを実行します.
Command Prompt on Windows シェルのMAC/Linux/UNIX
スクリプトを実行せずにコンパイルチェックのみを行うことができます.
Perlはdebugger . デバッガを起動するには、Perlコマンドで- dオプションを使用します.
スカラー変数に数値を割り当てることができます.数は整数または浮動小数点数である.
これらは基本ですarithmetic operations .
Increment and Decrement .
これはsingle quoted string . スカラー変数に割り当てることができます.
これはdouble quoted string . スカラー変数に割り当てることができます.ダブルクォート文字列では、\t ( TAB ),\n (改行)などのエスケープシーケンスを使用できます.
よく使われる文字列operators and functions . String Concatnation Operator join Function split Function length Function substr Function index Function 例:
Perlの説明arrays . 配列は複数の値を持つデータ構造体です.
これは配列宣言と代入です.エーlist 配列に割り当てることができます.
配列の要素を設定して取得します.
配列の長さを取得するには、配列をスカラコンテキストで評価することで、配列の長さを取得できます.
よく使われる配列functions .
Perlの説明hashes . ハッシュはキー値ペアを持つデータ構造体です.
これはハッシュ宣言です.エーlist ハッシュに割り当てることができます.
ハッシュの値を取得して設定します.
よく使われるハッシュfunctions .
条件分岐を説明する.
条件分岐の場合は、if statements .
if else else文です.
if ELSIFステートメントです.
Perlのリストcomparison operators . Perlは数値比較演算子と文字列比較演算子を持ちます.
数値比較演算子
数値比較は数値として値を比較します.
演算子
意味
$ x == $ y
$ xは$ y
$ x != $Y
$ xは$ y
$ x <$ y
$ xは$ y未満です
$ x>$ y
$ xは$ yより大きいです
$ x <= $ y
$ xは$ y以下です
$ x > = $ y
$ xは$ y以上です
文字列比較演算子
文字列比較演算子は値を文字列と比較します.値を辞書順と比較します.
演算子
意味
$ x eq $ y
$ xは$ y
$ x ne $ y
$ xは$ y
$ x lt $ y
$ xは$ y未満です
$$ gt $ y
$ xは$ yより大きいです
$$ le $ y
$ xは$ y以下です
x x y y
$ xは$ y以上です
説明loop syntax such as while/for .
これはwhile 文.
これはfor 文.
これはforeach ステートメントを配列の各要素を反復します.
説明するsubroutines .
これはサブルーチン定義です.サブルーチンは引数を受け取り、文を実行し、返り値を返します.
サブルーチンを呼び出します.
説明file Input/Output .
< $ fh >はline input operator .
$ !はpredefined variable を返します.
Perlでよく使われる機能について説明します.
説明Perl true and false values .
これらはPerlで偽の値です. ウンデフ 0 「」 "0 " (
真の値は上記の偽値以外のすべての値です.
The defined function 値が定義されているかどうかを調べます.
@ argvはcommand line arguments .
Perlはcontext を返します.
これらは、戻り値がスカラーコンテキストとリストコンテキストに対応して異なる例です.
Perlはunless statement .
PerlはPostfix ifステートメントとPostfixステートメントを使用しません.
perはステートメントのPostfixを持っています.
$は呼ばれますdefault variables
Perlはarray slices and hash slices 指定した要素を取得する構文.
Perlはmap function 配列の各要素を処理する.それぞれの要素は$ $に割り当てられます.
Perlはgrep function 条件が一致する要素を取得します.それぞれの要素は$ $に割り当てられます.
これはlist 代入.
The range operator 整数の範囲を持つリストを作成します.
Perlはstring list operator 簡単に文字列リストを作成します.
オペランドリターンを持たないリターンステータスundef スカラコンテキストで、リストコンテキストの空のリストを返します.
The die function 例外をスローします.
To read whole content from a file , 次の構文を使用できます.
PerlはTernary operator .
Perlは特別な代入演算子“Count”を持ちます.
Perlはdefined-or operator と特別な代入演算子.
The use 関数の読み込みmodule .
The do function Perlで書かれた設定ファイルを読んでください.
Perlは複数行コメントの構文を持っていませんがPOD 複数行コメントを書く構文.
原物はThe Fastest Master of Perl Basic Synta | Perl ABC
Perlの基本構文
構文チェック
必ず次の2行を書いてください.
use strict;
use warnings;
use strict 構文チェックを厳しくします.use warnings エラーを防ぐ警告を表示します.
印刷機能
The print function 文字列を標準出力に出力します.
print "Hello world";
コメント
Perlのcomment .
# comment
変数宣言
The my キーワード宣言variable .
# Scalar variables
my $num;
# Array variables
my @students
# Hash variables
my %month_num;
Perlプログラムの実行
PerlコマンドはPerlプログラムを実行します.
perl script.pl
出力をファイルに出力する場合はリダイレクトを使用できます.perl script.pl > file.txt
これらは以下のようにして行われます.コンパイルチェック
スクリプトを実行せずにコンパイルチェックのみを行うことができます.
perl -c script.pl
Perlデバッガ
Perlはdebugger . デバッガを起動するには、Perlコマンドで- dオプションを使用します.
perl -d script.pl
数
数
スカラー変数に数値を割り当てることができます.数は整数または浮動小数点数である.
my $num = 1;
my $num = 1.234;
数字が大きい場合、アンダースコアは区切り記号として使用できます.my $num = 100_000_000;
ソースコードで書かれた番号をnumeric literals .算術演算
これらは基本ですarithmetic operations .
# Addition
$num = 1 + 1;
# Subtruction
$num = 1 - 1;
# Multiplication
$num = 1 * 2;
# Division
$num = 1 / 2;
商をculculateして除算を行って、整数部分をint function .# Quotient
$quo = int(3 / 2);
%演算子は剰余を計算します.# Remainder
$mod = 3 % 2;
増加と減少
Increment and Decrement .
# Increment
$i++
# Decrement
$i--
弦
単一引用文字列
これはsingle quoted string . スカラー変数に割り当てることができます.
my $str1 = 'abc';
ダブル引用文字列
これはdouble quoted string . スカラー変数に割り当てることができます.ダブルクォート文字列では、\t ( TAB ),\n (改行)などのエスケープシーケンスを使用できます.
my $str2 = "def";
my $str3 = "a\tbc\n";
ダブルクォート文字列で変数展開を使用することもできます.# Variable expansion - The result is "abc def"
my $str4 = "$str1 def";
文字列演算子と関数
よく使われる文字列operators and functions .
# Concat two strings
my $join1 = 'aaa' . ' Bbb';
# Concat strings with a delimiter
my $join2 = join(',','aaa', 'bbb', 'ccc');
# Split
my @record = split(/,/, 'aaa,bbb,ccc');
# Length
my $length = length 'abcdef';
# Cut - The result is "ab"
my $substr = substr('abcd', 0, 2);
# Search - Returns the found position, otherwise returns -1
my $result = index('abcd', 'cd');
アレイ
Perlの説明arrays . 配列は複数の値を持つデータ構造体です.
配列宣言
これは配列宣言と代入です.エーlist 配列に割り当てることができます.
# Array declarations
my @array;
# Assignment to the array
@array = (1, 2, 3);
配列の要素の取得と設定
配列の要素を設定して取得します.
# Get an element of the array
$array[0];
$array[1];
# Set an element of the array
$array[0] = 1;
$array[1] = 2;
配列の長さ。
配列の長さを取得するには、配列をスカラコンテキストで評価することで、配列の長さを取得できます.
# Get the legnth of the array
my $array_length = @array;
配列関数
よく使われる配列functions .
# Cut off the first element
my $first = shift @array;
# Add an element at the beginning of the array
unshift @array, 5;
# Cut off the last element
my $last = pop @array;
# Add an element at the end of the array
push @array, 9;
ハッシュ
Perlの説明hashes . ハッシュはキー値ペアを持つデータ構造体です.
ハッシュ宣言
これはハッシュ宣言です.エーlist ハッシュに割り当てることができます.
# Hash declaration
my %hash;
# Assignment values to the hash
%hash = (a => 1, b => 2);
ハッシュ値の取得と設定
ハッシュの値を取得して設定します.
# Get a value of the hash
$hash{a};
$hash{b};
# Set a value of the hash
$hash{a} = 5;
$hash{b} = 7;
ハッシュのキーが「A - ZA - Z 0 - 9」で構成されていないなら、それは1つまたは二重引用符で囲まれなければなりません.$hash{'some-key'} = 5;
ハッシュ関数
よく使われるハッシュfunctions .
# Get all keys
my @keys = keys %hash;
# Get all values
my @values = values %hash;
# Check if the key exists
exists $hash{a};
# Delete a key of the hash
delete $hash{a};
条件分岐
条件分岐を説明する.
if文
条件分岐の場合は、if statements .
if ($condition) {
# If the condition is ture, the statements in this block are executed.
}
他ならば
if else else文です.
if ($condition) {
# If the condition is ture, the statements in this block are executed.
}
else {
# If the condition is false, the statements in this block are executed.
}
を返します。
if ELSIFステートメントです.
if ($condition1) {
# If the condition 1 is ture, the statements in this block are executed.
}
elsif ($condition1) {
# If the condition 2 is ture, the statements in this block are executed.
}
比較演算子
Perlのリストcomparison operators . Perlは数値比較演算子と文字列比較演算子を持ちます.
数値比較演算子
数値比較は数値として値を比較します.
演算子
意味
$ x == $ y
$ xは$ y
$ x != $Y
$ xは$ y
$ x <$ y
$ xは$ y未満です
$ x>$ y
$ xは$ yより大きいです
$ x <= $ y
$ xは$ y以下です
$ x > = $ y
$ xは$ y以上です
文字列比較演算子
文字列比較演算子は値を文字列と比較します.値を辞書順と比較します.
演算子
意味
$ x eq $ y
$ xは$ y
$ x ne $ y
$ xは$ y
$ x lt $ y
$ xは$ y未満です
$$ gt $ y
$ xは$ yより大きいです
$$ le $ y
$ xは$ y以下です
x x y y
$ xは$ y以上です
ループ構文
説明loop syntax such as while/for .
while文
これはwhile 文.
my $i = 0;
while ($i < 5) {
# Do something
$i++;
}
for文
これはfor 文.
for (my $i = 0; $i < 5; $i++) {
# Do something
}
foreachステートメント
これはforeach ステートメントを配列の各要素を反復します.
foreach my $num (@nums) {
# Do something
}
Perlではforeachステートメントはfor文のエイリアスです.# Same as the above foreach statement
for my $num (@nums) {
# Do something
}
サブルーチン
説明するsubroutines .
サブルーチン定義
これはサブルーチン定義です.サブルーチンは引数を受け取り、文を実行し、返り値を返します.
sub sum {
# Revices arguments
my ($num1, $num2) = @_;
# Execute the statements
my $total = $num1 + $num2;
# Return the return values
return $total;
}
サブルーチンの呼び出し
サブルーチンを呼び出します.
# Call a subroutine
my $sum = sum(1, 2);
ファイル入出力
説明file Input/Output .
# Open file
open my $fh, '<', $file
or die "Cannot open'$file':$!";
while (my $line = <$fh>) {
...
}
close $fh;
The open function ファイルをオープンします.“<”は読み出しモードを意味する.< $ fh >はline input operator .
$ !はpredefined variable を返します.
よく使われる機能
Perlでよく使われる機能について説明します.
Perl trueとfalse値
説明Perl true and false values .
偽の値
これらはPerlで偽の値です.
真の値
真の値は上記の偽値以外のすべての値です.
定義された関数
The defined function 値が定義されているかどうかを調べます.
defined $num;
コマンドライン引数
@ argvはcommand line arguments .
my ($args0, $args1, $args2) = @ARGV;
スカラーコンテキストとリストコンテキスト
Perlはcontext を返します.
これらは、戻り値がスカラーコンテキストとリストコンテキストに対応して異なる例です.
# Scalar context
my $time_str = localtime();
# List contex
my @datetime = localtime();
無条件文
Perlはunless statement .
unless ($condition) {
...
}
上記の場合は、以下のif文と同じです.if (!$condition) {
...
}
Postfix if , postfixを指定しない限り
PerlはPostfix ifステートメントとPostfixステートメントを使用しません.
# Postfix if
print $num if $num > 3;
# Postfix unless
die "error" unless $num;
ポストフィックス
perはステートメントのPostfixを持っています.
# Postfix for
print $_ for @nums;
配列の各要素は$ 20.0に割り当てられます.$は呼ばれますdefault variables
スライススライスとハッシュスライス
Perlはarray slices and hash slices 指定した要素を取得する構文.
# Array slice
my @select = @array[1, 4, 5];
# Hash slice
my @select = @hash{'a', 'b', 'd'};
マップ関数
Perlはmap function 配列の各要素を処理する.それぞれの要素は$ $に割り当てられます.
my @mapped = map {$_ * 2} @array;
マップfuntionの上記の結果は、ステートメントの次の結果と同じです.my @mapped;
for my $elem (@array) {
my $new_elem = $elem * 2;
push @mapped, $new_elem;
}
GRP関数
Perlはgrep function 条件が一致する要素を取得します.それぞれの要素は$ $に割り当てられます.
my @select = grep {$_ =~ /cat/} @array;
grep関数の上記の結果は、ステートメントの次の結果と同じです.my @select;
for my $elem (@array) {
if ($elem =~ /cat/) {
push @select, $elem;
}
}
リスト割り当て
これはlist 代入.
# List assignment
my ($num1, $num2) = ($num3, $num4);
範囲演算子
The range operator 整数の範囲を持つリストを作成します.
# Range operator
my @numes = (0 .. 5);
これは次のコードと同じです.my @numes = (0, 1, 2, 3, 4, 5);
文字列リスト演算子
Perlはstring list operator 簡単に文字列リストを作成します.
# String list operator
my @strs = qw(aaa bbb ccc);
これは次のコードと同じです.my @strs = ('aaa', 'bbb', 'ccc');
操作がない状態を返す
オペランドリターンを持たないリターンステータスundef スカラコンテキストで、リストコンテキストの空のリストを返します.
sub foo {
return;
}
# undef
my $ret = foo();
# ()
my @ret = foo();
例外処理
The die function 例外をスローします.
# Throw an exception
die "Error message";
The eval block 例外をキャッチ.例外が発生した場合、例外メッセージは定義済み変数“$@”にアサーションされます.# Catch exceptions
eval {
# Do something
};
# The exception message
if ($@) {
...
}
ファイルからコンテンツ全体を読み込む
To read whole content from a file , 次の構文を使用できます.
# Read whole content from a file
my $content = do { local $/; <$fh> };
三項演算子
PerlはTernary operator .
# Ternary operator
my $num = $flag ? 1 : 2;
宗度=
Perlは特別な代入演算子“Count”を持ちます.
$num ||= 2;
これは次のコードと同じです.$num = $num || 2;
//
Perlはdefined-or operator と特別な代入演算子.
$num //= 2;
これは次のコードと同じです.$num = $num // 2;
モジュール読み込み
The use 関数の読み込みmodule .
use SomeModule;
設定ファイルを
The do function Perlで書かれた設定ファイルを読んでください.
use FindBind;
my $conf_file = "$FindBin::Bin/app.conf";
my $conf = do $conf_file
or die "Can't load config file \"$conf_file\":$! $@";
設定ファイルの例{
name =>'Foo',
number => 9
}
複数行コメント
Perlは複数行コメントの構文を持っていませんがPOD 複数行コメントを書く構文.
=pod
Comment1
Comment2
Comment3
=cut
Reference
この問題について(Perl基本構文2022の最速のマスター), 我々は、より多くの情報をここで見つけました https://dev.to/yukikimoto/the-fastest-master-of-perl-basic-syntax-2022-3gemテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol