私はこのコードを使用してコンテンツからタイムスタンプを検出しています。タイムスタンプを正規表現でショートコードに変換
$pattern = '/(?<!:)\d{1,2}:\d{2}(?::\d{2})?(?!(?::\d{2})?\s*[ap]\.?m\.?)(?!.*?["\'])/';
$replacement = '[spp-timestamp time="$0"]';
$foundTimestamp = preg_replace ($pattern,$replacement, $content);
がショートしたタイムスタンプを検出するために、[SPP-タイムスタンプの時間を=「夜12時」]
ただ、例えば選択DIVからタイムスタンプを選択しないように、このにより多くのロジックを追加したい
<div class="sm2-inline-duration timestamp">0:00</div> and
<div class="sm2-inline-time timestamp">0:00</div>
たとえば、私がクラス "timestamp"をdivに入れると正規表現で選択してはいけません。
可能ですか?
今のあなたが解析する必要がスタンプ
午後12時00分、00:00:00午前0時00、午後十二時00分00秒、およびAMまたはPM
使用DOMの解析と 'が含まれている' div'要素の内容を変更する除外する '// DIV [ない((@class、 "タイムスタンプ" が含まれて))]' XPathを参照してください。 'class'属性に' timestamp'を追加しました。正規表現ははるかに簡単になります。 –
上記の正規表現がどのように含まれているかを表示できますか? PHPで私はショートコードにpreg_replaceを置き換えることができるので.... –