※eregiに関しては、使い方は全く同じなので割愛します。
// 連続した4つの数字が存在するかどうかのマッチングを行っています。
// 文字列 '0123456789' に4連続の数字が存在しているので、「マッチ」と表示されます。
if (ereg('[0-9]{4}', '0123456789') == true) {
print 'マッチ';
} else {
print 'アンマッチ';
}
// 文字列 '012a345b678c9' には4連続の数字は存在していないので、「アンマッチ」と表示されます。
if (ereg('[0-9]{4}', '012a345b678c9') == true) {
print 'マッチ';
} else {
print 'アンマッチ';
}
結果を抜き出すには、第3引数に配列変数を渡します。
また、正規表現文字列の抜き出したい部分を括弧でくくります。
// 結果を格納する配列変数。
$resultArray = array();
// 第3引数に配列変数を渡します。
ereg('([0-9]{4}):([0-9]{3})', '0123:4567:89', $resultArray);
print $resultArray[0]; // 0123:456 と表示される
print $resultArray[1]; // 0123 と表示される
print $resultArray[2]; // 456 と表示される
count | マッチした場合、true(マッチ数)を返します。 マッチしなかった場合は、false(null)を返します。 |
pattern | 正規表現文字列を指定します。 |
targetString | マッチング元の文字列を指定します。 |
resultArray | ※省略可能です ここで指定した配列変数に、結果が格納されます。 $resultArray[1] は最初の括弧で囲まれた正規表現に該当する文字列を保持、 $resultArray[2] は2番目の括弧で囲まれた正規表現に該当する文字列を保持、 $resultArray[3] は3番目の……といったようになっています。 $resultArray[0] は マッチした文字列全体のコピーを保持しています。 |
[PHP - PHP - 文字列]
文字列を切り出す 【substr】
文字列を置換する 【str_replace】
文字列をエスケープする 【htmlspecialchars】
指定した文字が何文字含まれているか取得する 【substr_count】
文字列を数値に変換する 【intval】
対象の文字列が最初に現れる位置を調べる 【strpos】
文字列の長さを調べる 【strlen】