ホームページ > バックエンド開発 > PHPチュートリアル > 文字列をインターセプトする正規表現の作成を手伝ってください。

文字列をインターセプトする正規表現の作成を手伝ってください。

WBOY
リリース: 2016-06-13 13:17:21
オリジナル
824 人が閲覧しました

文字列をインターセプトするための正規表現を書くために専門家に助けを求める
正規表現はまったくわかりませんが、最近ちょっとしたことで正規表現を使用する必要があるので、専門家に助けを求めます

。目的は、HTML コードから関連する数値をインターセプトすることです:

HTML コードは次のとおりです。インターセプトされる数値は赤でマークされています



------解決策----------- --------
カンマが必要かどうかはわかりません...または必要かどうかもわかりません...

PHPコード

$str = <<<HTML
<input type="hidden" name="idArticleslist" value="2425898,2427913,"><input type="hidden" id="firstidarticle" name="firstidarticle" value="2425898">< input type="hidden" name="pageflag" value="1"> </form>
HTML;

if (preg_match('/idArticleslist"svalue="([d,]+)"/', $str, $match)) {
    エコー $match[1];
}
<br><font color="#e78608">------解決策---------</font><br>
ログイン後にコピー
PHP コード
[liangdong@bb-browser-test00.vm.baidu.com php_project]$ php main.php
配列
(
    [0] => 2425898
    [1] => 2427913
)
[liangdong@bb-browser-test00.vm.baidu.com php_project]$ cat main.php
<?php
$str = <<<EOF
<input type="hidden" name="idArticleslist" value="2425898,2427913,"><input type="hidden" id="firstidarticle" name="firstidarticle" value="2425898">< input type="hidden" name="pageflag" value="1"> </form>
EOF;

$n = preg_match('/<input.*name="idArticleslist".*value="(.*)"/iUs', $str, $matches);
if ($n) {
        print_r(explode(',', トリム($matches[1], ',')));
}
?>
<br /><font color='#e78608'>------解決策---------</font><br /><dl class='code'>PHP コード<pre class="brush:php;toolbar:false">
$s=<<<html
<input type="hidden" name="idArticleslist" value="2425898,2427913,"><input type="hidden" id="firstidarticle" name="firstidarticle" value="2425sss98">< input type="hidden" name="pageflag" value="1"> </form>
html;
preg_match('#(?<=idArticleslist).+?value="([^"]+)"#s',$s,$m);
エコー $m[1] // 2425898,2427913,
<br /><font color='#e78608'>------解決策----------------------</font><br /><input type="hidden" name= " idArticleslist" value="2425898,2427913,"><br>通常:<br><input type="hidden" name="idArticleslist" value="(.[^"]*)"><br> Regular は非常に単純です。翻訳する必要がある場合は、一致させたいものすべてを括弧内に追加します。これは、一致が次の時点で終了することを意味します。 <br>正規表現をテストするために使用するソフトウェアをお勧めします。<div class="clear"></div>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート