検索用語を入力
検索フォームを送信
my-Tool.com: 正規表現テスタ - 正規表現のルールは期待通りに機能するかどうかをテストする。 - PHP
IPアドレス
MaximaPHP
正規表現テスタ
数学
ゲーム
ネットワーク
インターネットコード
日付と時間
文字列とテキスト
ワードドメイン
コードテスタ
ビーワイズビット
ランキン
質問と答え
僕について
フォーラム
AdManner
無料広告サイト
インドネシア語
英語
JavaScript
PHP
VBScript
Java
PHP
PHP言語に使用された正規表現をテストする。
マッチするパターン
:
例) /http:\/\/([^\/]+)\/(.*)(\s|\n)/mi
検索するテキスト
:
正規表現テスタ このツールはプログラムに埋め込む前に正規表現パターンをあるテキストに対してテストするのに役に立つ。 上の欄に正規表現のパターンを入力し、そしてこのテキストをあなたのテキストに置き換えて「クエリ送信」を押すだけで、このツールはマッチしたところを返してくれる。 内部的には、このツールはPHPの標準正規表現関数「preg_match_all」を利用して、以下に見ることができる。 http://www.php.net/manual/en/function.preg-match-all.php そして、「ereg」 関数も利用して、以下に見ることができる。 http://www.php.net/manual/en/function.ereg.php このツールは以下のURLにいつも見ることができる。 http://www.my-tool.com/regexp/ 楽しい正規表現テストを!
エンジン
:
Perl (preg_match_all)
POSIX (ereg)
このツールを利用したほとんどのお客様は以下のツールも利用しました。
Source
(13.3%),
Forum
(6.7%),
PHP
(6.7%)
このツールのソースコードは以下に示す。
<?php /****************************************************************** * * RegexpPHP, PHP言語に使用された正規表現をテストする。 * Copyright (C) 2006, Bowo Prasetyo * * http://www.my-tool.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation below, * * http://www.gnu.org/licenses/gpl.html#TOC1 * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, * MA 02110-1301, USA. * * このプログラムはフリーソフトウェアです。あなたはこれを、以下のURLにフリーソフトウェ * ア財団によって発行された GNU 一般公衆利用許諾契約書の定める条件の下で * 再頒布または改変することができます。 * * http://www.gnu.org/licenses/gpl.html#TOC1 * * このプログラムは有用であることを願って頒布されますが、*全くの無保証* * です。商業可能性の保証や特定の目的への適合性は、言外に示されたものも含 * め全く存在しません。詳しくはGNU 一般公衆利用許諾契約書をご覧ください。 * * あなたはこのプログラムと共に、GNU 一般公衆利用許諾契約書の複製物を一部 * 受け取ったはずです。もし受け取っていなければ、フリーソフトウェア財団ま * で請求してください(宛先は the Free Software Foundation, Inc., 59 * Temple Place, Suite 330, Boston, MA 02111-1307 USA)。 * *****************************************************************/ /** * 現在のツールを表示する * * @param int $depth インデックスページからどれぐらい深いか * @param string $qstring 親ツールのクエリー文字列 */ unset($pattern); if (isset($_POST['pattern'])) $pattern = trim(stripslashes($_POST['pattern'])); $text = <<<EOT 正規表現テスタ このツールはプログラムに埋め込む前に正規表現パターンをあるテキストに対してテストするのに役に立つ。 上の欄に正規表現のパターンを入力し、そしてこのテキストをあなたのテキストに置き換えて「クエリ送信」を押すだけで、このツールはマッチしたところを返してくれる。 内部的には、このツールはPHPの標準正規表現関数「preg_match_all」を利用して、以下に見ることができる。 http://www.php.net/manual/en/function.preg-match-all.php そして、「ereg」 関数も利用して、以下に見ることができる。 http://www.php.net/manual/en/function.ereg.php このツールは以下のURLにいつも見ることができる。 http://www.my-tool.com/regexp/ 楽しい正規表現テストを! EOT; if(isset($_POST['text'])) $text = trim(stripslashes($_POST['text'])); $engine = 'perl'; if(isset($_POST['engine'])) $engine = $_POST['engine']; ?> <form method="POST" action=""> <table border=0> <tr><td>マッチするパターン</td><td>:</td><td><input type="text" name="pattern" size="60" value="<?php echo htmlspecialchars($pattern) ?>"><br /><span class="eg">例) /http:\/\/([^\/]+)\/(.*)(\s|\n)/mi</span></td></tr> <tr><td>検索するテキスト</td><td>:</td><td><textarea name="text" rows="20" cols="60"><?php echo htmlspecialchars($text) ?></textarea></td></tr> <tr><td>エンジン</td><td>:</td><td><input type="radio" name="engine" value="perl" <?php echo $engine=='perl'?'checked':'' ?>> Perl (preg_match_all) <input type="radio" name=engine value="posix" <?php echo $engine=='posix'?'checked':'' ?>> POSIX (ereg)</td></tr> </table> <input type="submit"> </form> <br> <?php if (isset($pattern) && isset($text) && $pattern!='') { if ($engine=='perl') { if (preg_match_all($pattern, $text, $out, PREG_SET_ORDER)>0) { echo count($out).'ヶ所にマッチした。<br><br>'; echo '<textarea rows="20" cols="60" style="border:none" readonly>'; foreach ($out as $arr) { foreach ($arr as $value) echo $value."\t"; echo "\n"; } echo '</textarea>'; } } else { if (ereg($pattern, $text, $out)!==FALSE) { echo count($out).'個のマッチを見つかった。<br><br>'; echo '<textarea rows="20" cols="60" style="border:none" readonly>'; foreach ($out as $value) echo $value."\t"; echo '</textarea>'; } } echo '<br>'; } ?>
©2006 my-Tool.com