正規表現の使い方を詳しく解説2_PHPチュートリアル

WBOY
リリース: 2016-07-13 17:25:24
オリジナル
970 人が閲覧しました

正規表現の使い方を詳しく解説(2)
使用例
正規表現をより包括的に理解した後、Perl、PHP、JavaScriptでの正規表現の使い方を見てみましょう。
通常、Perl における正規表現の使用形式は次のとおりです:
演算子 / 正規表現 / 置換する文字列 / 修飾子
演算子は m または s で、それぞれ一致操作と置換操作を表します。
このうち、正規表現項目とは、照合や置換の対象となるパターンで、任意の文字、メタキャラクター、ロケーターなどで構成できます。置換文字列項目は、s 演算子を使用するときに、見つかったパターン マッチング オブジェクトを置換する文字列です。最後のパラメータは、さまざまな一致または置換方法を制御するために使用されます。例:
s/geed/good/
ターゲットオブジェクト内で最初に出現する geed 文字列を見つけて、それを Good に置き換えます。ターゲット オブジェクトのグローバル スコープで複数の検索置換操作を実行したい場合は、パラメーター「g」、つまり s/love/lust/g を使用できます。
また、一致する大文字と小文字を制限する必要がない場合は、パラメータ「i」を使用できます。たとえば、
m/JewEL/i
上記の正規表現は、対象オブジェクトの Jewel、Jewel、または JEWEL に一致します。
Perlでは特殊演算子「=~」を使って正規表現の一致するオブジェクトを指定します。例:
$flag =~ s/abc/ABC/
上記の正規表現は、変数 $flag 内の文字列 abc を ABC に置き換えます。
次に、Perl プログラムに正規表現を追加して、ユーザーのメール アドレス形式の有効性を検証します。コードは次のとおりです:
#!/usr/bin/perl
# get input
print 「メールアドレスは何ですか?」 ”;
$email =
chomp($email);
# 一致して結果を表示
if($email =~ /^([a-zA-Z0-9_-])+@([a-zA-Z0] -9_-])+(.[a-zA-Z0-9_-])+/)


{
print(「あなたのメールアドレスは正しいです!」 ”);
}
else
{
print(「もう一度お試しください! ”);
}

ユーザーが PHP を好む場合は、 ereg() 関数をパターンマッチング操作に使用できます。 ereg() 関数の使用形式は次のとおりです。
ereg(pattern, string)
その中で、 pattern は正規表現モードを表し、string は検索と置換操作を実行する対象のオブジェクトです。PHP で記述されたプログラム コードは次のとおりです。
if (ereg(” ^([a-zA-Z0-9_-] )+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+”,$email))
{ echo “あなたのメールアドレスは正しいです!”;}
else
{ echo “Please try again!”;}
?>
最後に、JavaScript 1.2 には使用できる強力な RegExp() オブジェクトを見てみましょう。正規表現のマッチング操作の場合、test() メソッドは、ターゲット オブジェクトに一致するパターンが含まれているかどうかを確認し、それに応じて true または false を返すことができます。
JavaScript を使用して、ユーザーが入力したメール アドレスの有効性を検証できます。





http://www.bkjia.com/PHPjc/532051.html
www.bkjia.com
tru​​e

http://www.bkjia.com/PHPjc/532051.html

正規表現の使い方を詳しく解説 (2) 使用例 正規表現をより包括的に理解した後、Perl、PHP、JavaScript での正規テーブルの使い方を見てみましょう...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!