php spot
phpが使えるレンタルサーバー特集
検索グラス
トップページへ

正規表現::○文字以上、□文字以下

○文字以上、□文字以下


例えば、a+ とすると aa aaaaaaa 等、a1文字以上にマッチします。
+の他にも*があって、これは0文字以上で、
a* で 空文字にもマッチしますし、aaaaa aaaaaaaaa にも当然マッチします。

コンピュータで検索っていうと1対1の検索しか出来ないようでこの正規表現があればできるわけです。

なので、たった1つの条件文でいろんなところにマッチして便利なんです

例えば、hello という検索語句で検索すると hello にしか当然マッチしてくれません(1対1)。
正規表現だと、
hel+o とすると、 hello や hellllllllllllo なんかにもマッチしてくれるんです。

?というのもあって、これは a? とすると a が0か1文字という意味で、A?HO とすると HO でも AHO でもマッチしますという感じです。

0か1文字、という範囲もいいけど3〜5文字っていうのは?
これは{3,5}とします。
AHO{3,5} で AHOOO , AHOOOO , AHOOOOO
にマッチします。

3文字以上ならマッチさせたい、っていうのなら
AHO{3,} として5を省略してください。

まとめ
+ は前にきた文字の1文字以上の連続
* は前にきた文字の0文字以上の連続
? は前にきた文字の0文字か1文字
{x,y} で前にきた文字のx文字以上、y文字以下の連続
{x,} で前にきた文字のx文字以上の連続
マスターしたいという方は実際に使ってみることをお勧めします。

実験プログラム
<?
$regex = "a+"; // ここに正規表現を
$str = "aaaa"; // ここに検索対象文字列を

if(ereg($regex,$str))
    echo "マッチしました。";
else
    echo "マッチしません。";
?>

スポンサードリンク



次のページ

もどる
管理人の新着ブログ記事

    プライバシーポリシー | お問い合わせ
copyright © 2003-2019 phpspot all rights reserved. powered by phpspot CMS.