Skip to content

Latest commit

 

History

History
998 lines (709 loc) · 29.5 KB

perlreref.pod

File metadata and controls

998 lines (709 loc) · 29.5 KB

NAME

perlreref - Perl ��勖③荀頫◐憗�勉�ŝ����<�㋘�潟�

DESCRIPTION

��㋘����㏍�ャ�<�潟����壔��Perl ��勖③荀頫◐憗�勉�壔�ゃ����壔�ŝ����<�㋘�潟�鴻�с����� 絎������ʋ����宴�壔��perlre ��� perlop�����障�������㋘����㏍�ャ�<�潟���� "SEE ALSO" ��祉�壔�激�с�潟�������с����⓾��������������

OPERATORS

(羲�膊�絖�)

=~ ��壩③荀頫◐憗����ñ�����������紊���違��羆阪�������障����� �����ャ����������翫����˨�壔��$_ ���篏帥�������障�����

$var =~ /foo/;

!~ ��壩③荀頫◐憗����ñ�����������紊���違��羆阪�������������������勛�����������荵≪����障��; ��������������������������医�純��菴�������紊掩����������亥�����菴������障�����

$var !~ /foo/;

m/pattern/msixpogcdualn �����帥�若�潟����������勉�����������絖�������罎�膣≪����� 筝���������������ŝ����激�с�潟����ñ�������障�����

m  茲���域����≪�若�� - ^ ��� $ ��������◐����ʃ����˨�������������障��
s  ���茵���������⓾�������� - . ��� \n ��˨�������������障��
i  紊у�����絖���勰����������∴�������障��
x  茯㏍�帥����������勖�≦宍 - 腥榊�純����潟�<�潟�������ɾ�宴�̥舟�����障��
p  ������������������絖������勉�潟����若��篆�絖������� -
   ${^PREMATCH}, ${^MATCH}, ${^POSTMATCH} ���絎�臂í�������障�����
o  �����帥�若�潟��筝�綺⓾�������潟�潟����ゃ�˨����障��
g  ��違�㏍�若����� - ��������������������勉����鴻�
c  /g ���篏帥�c�⓾�������������˨�����������紊掩�������⓾�� pos �����ŝ�祉����������障�����
a  \d, \s, \w, [:posix:] ��� ASCII ��勉�帥�˨����������潟�違����������������狗��
aa (篋���ゃ�� a) ��障�� /i ��勉����������潟�違�� ASCII/���-ASCII �����ゅ��
l  �憜����勉�㏍�宴�若�˨��緇���c�⓾����������潟�
u  Unicode ��勉�˨�若�˨��緇���c�⓾����������潟�
d  Unicode ���腓冴�������勉����ŝ�������������ゃ����c����ŝ�˨�若�˨��緇���c�⓾����������潟�
n   �����������≪�若�����() ��� $1, $2 ��ŝ�í����������ŝ��

'pattern' ���腥堺��絖������ŝ��������緇���˨����������潟�違�� ������������ 罩h�頫◐憗��篏帥�������障����� �����勖��膊�絖������������̥����������勉�勌検��鴻�с��'/' 篁ュ����勉����ŝ����帥��篏帥����障����� �����ŝ����帥�� '/' ��勐�翫����� m ��夌����ャ�с����障�����

qr/pattern/msixpodualn ��壔��罩h�頫◐憗��紊���違����ャ���������������������������������� �����障����� m// ���������篆勰﹅絖����篏帥����⓾��罩h�頫◐憗�˩��膊<�������障�����

s/pattern/replacement/msixpogcedual ��壔��'pattern' ��с�������������������勉�� 'replacement' ��х舟�����������障����� m// ���������篆勰﹅絖����篏帥����⓾����������˩����よ申�����������障��:

e  'replacement' ���綣���������☀��箴<����障��
r  臀勖��������腟�������菴������������勖��絖������壠����眼����障��������

'e' ��虁����医�����絎���с����障����� 'replacement' ��壔�������ŝ����帥�������⓾�激�潟�違�˨�壔�í�若�� (') ���篏帥����������翫����� ��ゃ����⓾����������˨�壔�í�若��������������絖������������☀В�����������障�����

?pattern? ��� m/pattern/ ��˩室��⓾����障��������筝�綺⓾�������������������障����� �����ŝ����帥�壠����眼�с����障�������� reset() ��с�ŝ�祉����������ŝ�������違�ŝ����障��������

SYNTAX

\       ��翫����勖��絖���������鴻�宴�若�������障��
.       ��壕�������ゃ�鋌紙����勌�����絖���˨�������������障�� (/s ���篏帥�������⓾����ŝ����翫��)
^       ���絖����(/m ���篏帥�������⓾�������翫����虁��)��勐����㏍�˨�������������障��
$       ���絖����(/m ���篏帥�������⓾�������翫����虁��)��勖��絨障�˨�������������障��
*       ���茵�������荀�膣���勉�若�㊤��篁ヤ����勛弘���菴������˨�������������障��
+       ���茵�������荀�膣���勌�����篁ヤ����勛弘���菴������˨�������������障��
?       ���茵�������荀�膣���勉�若�㊤����障����壚�������勐�榊憗�˨�������������障��
{...}   ���茵�������荀�膣���勛弘���菴������勛����蚊�����絎������障��
[...]   �����í�宴�������勐����眼�˨��������絖���勉�������������˨�������������障��
(...)   $1, $2... ��勉�������̹�����罩h�頫◐憗����違�˨�若����������〠����������障��
(?:...) ������罩h�頫◐憗����������������������ŝ����違�˨�若����������障�� (��壔�í�鴻�帥��)
|       綏☗劻�������������˨�����������罩h�頫◐憗�˨�������������障��
\g1 or \g{1}, \g2 ...    N ��ɾ�勉�勉�違�˨�若����勉����㏍�鴻����˨�������������障��
\1, \2, \3  ...          N ��ɾ�勉�勉�違�˨�若����勉����㏍�鴻����˨�������������障��
\g-1 or \g{-1}, \g-2 ... N ��������勉�違�˨�若����勉����㏍�鴻����˨�������������障��
\g{name}     ��������ゃ��緇���劫����
\k<name>     ��������ゃ��緇���劫����
\k'name'     ��������ゃ��緇���劫����
(?P=name)    ��������ゃ��緇���劫����� (python ��勖��羈�)

ESCAPE SEQUENCES

(�����鴻�宴�若����激�若�宴�潟��)

�����������奝��絽吾�勖��絖������������☗�������障�����

\a       ��≪�í�若�� (�����若��)
\e       �����鴻�宴�若��
\f       ��鴻����若�
\n       ��壕��
\r       ��㏍�c�ŝ����吾�ŝ�帥�若�
\t       ��帥��
\037     ��ɱ垩�� 3 罅���� 8 ��我�違�с��������絖�������紊� \777
\o{2307} ��ɱ垩�� 8 ��我�違�с��������絖������≦�狗��
\x7f     ��ɱ垩�� 2 罅���� 16 ��我�違�с��������絖�������紊� \xFF
\x{263a} ��ɱ垩�� 16 ��我�違�с��������絖������≦�狗��
\cx      Control-x
\N{name} ��������ゃ�� Unicode ���絖���障����壩��絖�筝⓾�
\N{U+263D} 16 ��我�違�˨����� Unicode ���絖�
\l  罨<�勖��絖����絨����絖���˨����障��
\u  罨<�勖��絖������帥�ゃ��������絖���˨����障��
\L  \E ��障�у�����絖���˨����障��
\U  \E ��障�уぇ���絖���˨����障��
\F  \E ��障�х�潟�粋昭��炊��絖���˨����障��
\Q  \E ��障�с����帥�若�潟�勉�<�炊��絖������≦�鴻�˨����障��
\E  篆勖③���腟�篋������障��

��帥�ゃ��������絖���˨�˨�ゃ����⓾�� "Titlecase" ��������с����⓾��������������

������ 1 ��ゃ�奝��絽吾�勖��絖���������夌�違�ŝ�c����������������障��:

\b  ���絖���壔�í�鴻�勌賢篁ュ����с�壔��茵������с����c�⓾�������壔�鴻����若�鴻�с�壔�������障�����

CHARACTER CLASSES

(���絖���壔�í��)

[amy]    'a', 'm', 'y' ��勉�������������˨��������
[f-j]    ��������激�ャ�壔��膀���蚊��������絎������障��
[f-j-]   �����鴻�宴�若�����������������������������緇���˨�������������激�ャ�壔����������激�ャ����������潟����障��
[^f-j]   ��㏍�c�㋘�������壔�����������篁ュ����˨��������������腓冴����障��

(\N 篁ュ�����)篁ヤ����勉�激�若�宴�潟�鴻�壩��絖���壔�í�劫����с��������篁ュ����с�����篏������障����� ��������� 6 ��ゃ�壔�㏍�宴�若�˨�勐襲��帥����������������⓾�� Unicode ��勐襲��帥����������障����� 荅括完��˨�ゃ����⓾�� perllocale ��� perlunicode ��������с����⓾��������������

\d      ��医�
\D      �����医�
\w      ���茯����絖�
\W      ������茯����絖�
\s      腥榊�醇��絖�
\S      ���腥榊�醇��絖�
\h      羂翫抗腥榊�醇��絖�
\H      ���羂翫抗腥榊�醇��絖�
\N      �����壕�� ('{NAME}' ���綣����膓������⓾����ŝ����翫��;; ���絖���壔�í�鴻�с�
        筝�罩�; [^\n] ��◐��箴�; /s ��ŝ����勐�翫����� '.' ������罕�)
\v      �����雁Ã��醇��絖�
\V      ��������雁Ã��醇��絖�
\R      筝���㋜����ʋ�壕��                (?>\v|\x0D\x0A)
\pP     P ��勐�������� (Unicode) �����㏍�������
\p{...} 1 ���絖���������激����������� Unicode �����㏍�������c�˨��������������
\PP     ��� P ��˨��������������
\P{...} 1 ���絖���������激����������� Unicode �����㏍�������c����ŝ�������勉�˨��������������
\X      Unicode ��勖�≦宍��梧��膣���壔�í�鴻�帥�˨��������������

POSIX ���絖���壔�í�鴻��������������絲障����� Unicode ��� Perl ��勛�後����í��:

ASCII-         Full-
   POSIX    range          range    backslash
 [[:...:]]  \p{...}        \p{...}   sequence    Description
-----------------------------------------------------------------------
alnum   PosixAlnum       XPosixAlnum            'alpha' ��� 'digit'
alpha   PosixAlpha       XPosixAlpha            ��怨��
ascii   ASCII                                   篁紙����� ASCII ���絖�
blank   PosixBlank       XPosixBlank   \h       羂翫抗腥榊��;
                                                  ��◐┏蕁���� \p{HorizSpace}
                                                  ������ (GNU ��≦宍)
cntrl   PosixCntrl       XPosixCntrl            ��九勝���絖�
digit   PosixDigit       XPosixDigit   \d       ��医��
graph   PosixGraph       XPosixGraph            'alnum' ��� 'punct'
lower   PosixLower       XPosixLower            絨����絖�
print   PosixPrint       XPosixPrint            'graph' ��� 'space', ���������
                                                  Control ��壠�˨�障�ŝ��
punct   PosixPunct       XPosixPunct            ASCII ��勛����蚊�勐媺˛��鴻�
                                                  ��激�潟�����; �����˨����勐����眼�
                                                  punct
space   PosixSpace       XPosixSpace   \s       腥榊�醇��絖�
upper   PosixUpper       XPosixUpper            紊ф��絖�
word    PosixWord        XPosixWord    \w       'alnum' + Unicode �����若�� +
                                                  '_' ��勉�������ʋ・膓����絖�
                                                  (Perl ��≦宍)
xdigit  ASCII_Hex_Digit  XPosixDigit            16 ��我��;
                                                   ASCII ��勛����蚊�с�
                                                   [0-9A-Fa-f]

��障�����\p{XPosixAlpha} ��勉�������� \p{Alpha} ��勉�������ŝ�������障����障� ���臂ò�������������障��; �����⓾�勌��荀с� "Properties accessible through \p{} and \P{}" in perluniprops ��˨�������障�����

���絖���壔�í�鴻�勌賢��с��:

POSIX      traditional   Unicode
  [:digit:]       \d        \p{Digit}
  [:^digit:]      \D        \P{Digit}

ANCHORS

(��≪�潟�˨��)

�����鴻�⓾�若�㊤����勤;�����с�����

^  ���絖����(/m ������絎���������⓾�������翫����˨�虁��)��勐����㏍�˨�������������障��
$  ���絖����(/m ������絎���������⓾�������翫����˨�虁��)��勛��腴壔����������壩�壕����勐����˨�������������障��
\b{} 筝㏍����c�������ф��絎����������紜������˨����������潟�違�����
\B{} \b{} ��с����������潟�違����ŝ�������勉�˨����������潟�違�����
\b ���茯�紜����(\w ��� 鐃�W ��勰��)��˨�������������障��
\B ���茯�紜����篁ュ��(\w ��� \w ��勰����� \W ��� \W ��勰��)��˨�������������障��
\A ���絖������勐�����(/m ��˨�壠襲��帥�������障�����)��˨�������������障��
\Z ���絖������勖��絨�(�����ュ櫝�純�ʋ�壕����勐��)��˨�������������障��
\z ���絖������勖�㋚����勖��絨障�˨�������������障��
\G ��������� m//g ��勉����������������贋����勖��絨障�˨�������������障��
\K \K ��勐窪��眼�勐��絎鴻��膓㊥�����������$& ��˨�壠�˨�障�ŝ��

QUANTIFIERS

(������絎�絖�)

������絎�絖���壔�������í�˨����с�虁鴎罨蚊�с�� 筝���ɱ窪������ 筝���ʒ�激�� ��������������障�����

���紊�    ���絨�    ���������     膀���
------- ------- ---------- -------------
{n,m}   {n,m}?  {n,m}+     ���篏� n ������m ���篁ュ����榊
{n,}    {n,}?   {n,}+      ���篏� n �����榊
{n}     {n}?    {n}+       罩g∈��� n �����榊
*       *?      *+         0 ���篁ヤ�� ({0,} ���������)
+       +?      ++         1 ���篁ヤ�� ({1,} ���������)
?       ??      ?+         0 �����障����� 1 ��� ({0,1} ���������)

(Perl 5.10 ��у����ャ��������) ��������若�壔�������壔����í����壔�������吟����障��: ��������守�����絎�絖����篁������������帥�若�潟�с����������������翫�������������壔����í����壔�壔����障�����; �����������������˨����c�⓾�����������篏����紊掩����������������˨�ŝ�c�⓾����с�����

{,n} ���������������絎�絖���壔�������障�������� ��������壔�ŝ����í�˨�ʋ��絖������������〠�宴�������障�����

EXTENDED CONSTRUCTS

(��≦宍罕����)

(?#text)          ��潟�<�潟��
(?:...)           ������罩h�頫◐憗����������������������ŝ����違�˨�若����������障�� (��壔�í�鴻�帥��)
(?imxs-imsx:...)  ��ŝ����激�с�潟��������/��≦�鴻�˨����� (m// 篆勰﹅絖���勉����勉��������)
(?=...)           ��若�㊤����勤�壠�����茯㏍�粋;��
(?!...)           ��若�㊤����勐�☗�����茯㏍�粋;��
(?<=...)          ��若�㊤����勤�壠��緇�茯㏍�粋;��
(?<!...)          ��若�㊤����勐�☗��緇�茯㏍�粋;��
(?>...)           ��堺�ャ����������������������������������壔����í����壔����ŝ��
(?|...)           ���絏���勉�ŝ�祉�����
(?<name>...)      ������篁����������
(?'name'...)      ������篁����������
(?P<name>...)     ������篁���������� (python ���羈�)
(?[...])          ��≦宍紊с����c�����絖���壔�í�
(?{ code })       ������莨若�帥�潟�若����� ��祉����ゃ�� $^R �����主����������障��
(??{ code })      ������罩h�頫◐憗����祉����ゃ�壩③荀頫◐憗�������〠�宴�������障��
(?N)              ��泣�������帥�若�括�ɱ�� N ������絽違�����
(?-N), (?+N)      N ������/緇���勉�泣�������帥�若�潟�����絽違�����
(?R), (?0)        �����帥�若�喝��篏���勐����㏍�����絽違�����
(?&name)          ������篁������泣�������帥�若�潟�����絽違�����
(?P>name)         ������篁������泣�������帥�若�潟�����絽違����� (python ���羈�)
(?(cond)yes|no)
(?(cond)yes)      ��>散綣�; "cond" ��ф��絎���с�������勉��:
                  (?=pat)   �����劫����
                  (?!pat)   �����劫����с�勐�☗��
                  (?<=pat)  緇���劫����
                  (?<!pat)  緇���劫����с�勐�☗��
                  (N)       ��泣�������帥�若�� N ���篏������˨��������������
                  (<name>)  ������篁������泣����˨�若����潟��篏������˨��������������
                  ('name')  ������篁������泣����˨�若����潟��篏������˨��������������
                  (?{code}) ��潟�若����>散
                  (R)       ���絽違�����������
                  (RN)      N ��ɾ�勉�勉�泣�������帥�若�潟�����絽違�����������
                  (R&name)  ������篁������泣�������帥�若�潟�����絽違�����������
                  (DEFINE)  絽吾�����; �����帥�若�潟�ŝ����虁┗��������ŝ��

VARIABLES

(紊����)

$_    羲�膊�絖����篏睡����������������í�˨����勐����
$`    ������������������絖����������茵�������������
$&    ������������������絖�������篏�
$'    ������������������絖�������緇�膓�������������
${^PREMATCH}   ������������������絖����������茵�������������
${^MATCH}      ������������������絖�������篏�
${^POSTMATCH}  ������������������絖�������緇�膓�������������

��障�� Perl 5.18 篁ュ�����篏帥�c�⓾�������翫����勖絵�� $`, $&, $' ��勉��������������篏帥�������������㏍�違�í��筝㏍�� �����⓾�� 罩h�頫◐憗� ���綺⓾��篏�筝������障����� ���綺☖��筝����綣����莎激�������ŝ�����膈�箴<�ʃ;�憗�勉�������˨�壔��perlvar ��� @- ��� 茯帥�鴻�⓾�帥�⓾�������������� ��障�����Devel::SawAmpersand ��������с����⓾�������������� Perl 5.10 ���������膈�箴<�ɱ����違�с����� ${^PREMATCH}, ${^MATCH}, ${^POSTMATCH} ���篏帥����障��������������������絎�臂í����������˨�壔��罩h�頫◐憗� /p (篆�絖�(preserve)) 篆勰﹅絖������ゃ�����綽�荀������������障����� Perl 5.20 ��с�壔��$`, $&, $' ���篏帥�c�⓾�����綺⓾�勰�������壔�������障��������

$1, $2 ...  X ��ɾ�勉�勖��������������綣����篆���������障��
$+    ���緇���˨����c����у�蚊�障����������帥�若�潟��������
$^N   ������菴������̹�����������������篆���������障��
$^R   ���緇���� (?{...}) 綣���勛��������篆���������障��
@-    ��違�˨�若����勐����㏍�������勉�ŝ����祉�������� $-[0] ��壔�����������篏���勐����㏍�с��
@+    ��違�˨�若����勖��絨障�������勉�ŝ����祉�������� $+[0] ��壔�����������篏���勖��絨障�с��
%+    ������篁������������違�˨�若��
%-    ��������ŝ����<�㋘�潟�鴻�������⓾�勐�����篁������������違�˨�若��

��������������違�˨�若����� ������ �����c����勰����ŝ�х�ɱ垬�������������障�����

FUNCTIONS

(��∽��)

lc          ���絖�������絨����絖���˨����障��
lcfirst     ���絖������勖�������勖��絖����絨����絖���˨����障��
uc          ���絖�������紊ф��絖���˨����障��
ucfirst     ���絖������勖�������勖��絖���� Titlecase ��˨����障��
fc          ���絖���������潟�粋昭��炊��絖���˨����障��
pos         ��˨�㋘�潟����勉��������篏�臀勉��菴����������荐㊤����������������障��
quotemeta   ��<�炊��絖������壔�í�若�������障��
reset       ?pattern? ��勛�倶�������ŝ�祉����������障��
study       �����������潟�違�勖����ï����勉�����������絖�������茯帥�鴻�障��
split       ���絖������������蚊��������������罩h�頫◐憗��篏帥����障��

�����������勖�������勌����ゃ�壔�������鴻�宴�若����激�若�宴�潟�� \L, \l, \U, \u, \F ���篌若�⓾����障����� ��帥�ゃ��������絖���˨�ゃ����⓾�壔��"Titlecase" ��������с����⓾�����������; ��潟�粋昭��炊��絖���˨�ゃ����⓾�壔��"Foldcase" ��������с����⓾��������������

TERMINOLOGY

(��◑��)

Titlecase

(��帥�ゃ��������絖�)

Unicode ��勖��綽泣�с����祉�������í�勐�翫����壠ぇ���絖������������с�������������ゃ��茯��� "sharp s" ��勉�������ɾ�劫����勖��絖���˨�ゃ����⓾�夌�違�ŝ����障�����

Foldcase

(��潟�粋昭��炊��絖�)

紊ф��絖�絨����絖���̹�≪�����������絖�������罸�莠������������������������� Unicode ��勐就綣���с��; ������腮勉�勖��絖���虁�������� 1 絲上��紊ф��絖�絨����絖������������潟�違�������ゃ�������с����� 筝祉��絨����絖���勐��腮勉�с�����

AUTHOR

Iain Truskett. Updated by the Perl 5 Porters.

This document may be distributed under the same terms as Perl itself.

SEE ALSO

  • 罩h�頫◐憗�勉����ャ�若����ŝ�≪�˨�с����� perlretut���

  • �����e�������í�������ャ�若����ŝ�≪�˨�с����� perlrequick���

  • ��������ŝ��荅括完��с����� perlre���

  • 紊���違�̹�≪�����荅括完��с����� perlvar���

  • 羲�膊�絖���勤¼膣違�с����� perlop���

  • ��∽�違�勤¼膣違�с����� perlfunc���

  • 罩h�頫◐憗�̹�≪����� FAQ ��с����� perlfaq6���

  • ��������壔�鴻�í����激�ャ�激�若�宴�潟�� ��勐�����莖������с����� perlrebackslash���

  • ���絖���壔�í�鴻�勐�����莖������с����� perlrecharclass���

  • ��壔����������勐����眼�������������違�勤����í�勉�������� re ��≪�吾�ャ�若�˨��

  • "Debugging Regular Expressions" in perldebug

  • 罩h�頫◐憗����初�������̹�≪�����荅括完��с����� perluniintro, perlunicode, charnames, perllocale���

  • �����勤º蕁���̹�≪�����絎������ʃ����壔��������莖������с����� Jeffrey Friedl ��˨�������悟�� Mastering Regular Expressions (http://oreilly.com/catalog/9780596528126/) (O'Reilly��������榊��: ISBN 1556592-257-3) (��ユ�㋝�������壔��荅活ą 罩h�頫◐憗��ISBN4-87311-130-7 (膃㋙�������勉�����))���

THANKS

David P.C. Wollmann, Richard Soderberg, Sean M. Burke, Tom Christiansen, Jim Cromie, and Jeffrey Goff for useful advice.