Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[PHP] mit regulärem Ausdruck hierarchie prüfen

Empfohlene Antworten

hi,

in einer meiner Webseiten erlaube ich bestimmte HTML-Tags.

<table><tr><td></td></tr></table> ...

in beiträgen.

(dabei ist unabhängig davon, ob ich eigene Tags, also [td] benutze oder nicht)

damit das aber das Design der Seite und den Quelltext außerhalb des Beitrags nicht gefärden kann, frage ich als erstes, ob auf <td> auch ein </td> folgt. gleiches bei <table> und <tr>.

Problem:

theoretisch kann ich einfach <td> hinschreiben, ohne <table>

bisher habe ich:


$match = "#<(".$tag.")>(.*?)</(".$tag.")>#s";
$replace = "<\\1>\\2</\\1>";
[/PHP]

benutzt.

$tag ist jeweils td, tr oder table. < und > weil generell vor speichern der beiträge mit HTML_entities codiert wird.

wie müsste der reguläre ausdruck aussehen, damit er auch prüft, ob vor dem td ein tr UND ein table ist.

für die umwandlung von tr müsste dann geprüft werden, ob ein table da ist.

ich hoffe ich habe mich einigermaßen verständlich ausgedrückt.

Danke euch.

edit:

es sei gesagt das in $match die < > nicht < und > sein sollten, sondern die html_entities (&.lt; bzw. &.gt;) dazu...leider scheint das forum sie zwangsweise zu konvertieren

Hi,

warum nicht einfach mit TIDY die Eingaben parsen?

Gruß,

Markus

danke, mal ausprobieren.

dürfte allerdings das Problem geben, das die Beiträge keine reinen HTML-Dateien sind, sondern eben Foren-Posts wie hier auch, wo nur ein bischen HTML mit rein 'darf'

wenn das HTML (begrenze Tag-Auswahl) nicht gültig ist, möchte ich an dieser stelle die < > codiert belassen.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.