Regex gesucht
bearbeitet von
> > <? sollen gefunden werden, während <?php nicht gefunden werden sollen
> Scheint gut funktioniert zu haben.
Ooh, eine Regex Frage! Komme spaet, haette aber auch noch eine Idee.
~~~
<?php
↑ hier beginnt ein Wort
~~~
Man spricht von einer [Wortgrenze](http://www.rexegg.com/regex-boundaries.html#wordboundary).
Du suchst aber `<?` wenn es nicht an ein Wort grenzt. Dafuer gibt es das grosse `\B`. Ein [Anker](https://msdn.microsoft.com/de-de/library/h5181w5w%28v=vs.110%29.aspx), der fuer eine [Nicht-Worgrenze](http://www.rexegg.com/regex-boundaries.html#notb) bzw. _non-word boundary_ steht und auf eine entsprechende Position passt.
Da das Fragezeigen innerhalb des Suchmusters [eine spezielle Bedeutung](https://www.hscripts.com/tutorials/regular-expression/metacharacter-list.php), naemlich die eines [Quantifiers](http://www.regular-expressions.info/repeat.html) fuer 0 oder 1 des vorangehenden Ausdrucks oder Zeichens hat, muss es mittels eines Backslashs maskiert werden, um ein literales Fragezeichen zu finden:
~~~
<\?\B
~~~
[Findet also <? wenn es nicht an ein Wort grenzt](https://regex101.com/r/pF5yW6/1). Es sollte auf jeden Fall mit PHP & Notepad++ (PCRE), aber auch Javascript oder Python funktionieren. Aber du hast es ja eh schon erledigt.
Guten Abend! Jonny 5
Regex gesucht
bearbeitet von
> > <? sollen gefunden werden, während <?php nicht gefunden werden sollen
> Scheint gut funktioniert zu haben.
Ooh, eine Regex Frage! Komme spaet, haette aber auch noch eine Idee.
~~~
<?php
↑ hier beginnt ein Wort
~~~
Man spricht von einer [Wortgrenze](http://www.rexegg.com/regex-boundaries.html#wordboundary).
Du suchst aber `<?` wenn es nicht an ein Wort grenzt. Dafuer gibt es das grosse `\B`. Ein [Anker](https://msdn.microsoft.com/de-de/library/h5181w5w%28v=vs.110%29.aspx), der fuer eine [Nicht-Worgrenze](http://www.rexegg.com/regex-boundaries.html#notb) bzw. _non-word boundary_ steht und auf eine bestimmte Position passt.
Da das Fragezeigen innerhalb des Suchmusters [eine spezielle Bedeutung](https://www.hscripts.com/tutorials/regular-expression/metacharacter-list.php), naemlich die eines [Quantifiers](http://www.regular-expressions.info/repeat.html) fuer 0 oder 1 des vorangehenden Ausdrucks oder Zeichens hat, muss es mittels eines Backslashs maskiert werden, um ein literales Fragezeichen zu finden:
~~~
<\?\B
~~~
[Findet also <? wenn es nicht an ein Wort grenzt](https://regex101.com/r/pF5yW6/1). Es sollte auf jeden Fall mit PHP & Notepad++ (PCRE), aber auch Javascript oder Python funktionieren. Aber du hast es ja eh schon erledigt.
Guten Abend! Jonny 5