User Tools

Site Tools


regex:all_text_not_containing

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
regex:all_text_not_containing [2025/05/27 07:44] peterregex:all_text_not_containing [2025/05/27 07:55] (current) peter
Line 27: Line 27:
 </code> </code>
  
-Or a negative look-behind assertion:+Or, use a negative look-behind assertion:
  
 <code bash> <code bash>
Line 33: Line 33:
 </code> </code>
  
-Or just plain old character sets and alternations:+Or, use plain old character sets and alternations:
  
 <code bash> <code bash>
Line 41: Line 41:
 ---- ----
  
 +===== Match strings that do not end in particular sequence =====
 +
 +Use a negative lookbehind assertion:
 +
 +<code bash>
 +^[/\w\.-]+(?<!\.html)$
 +</code>
 +
 +or, use a lookahead:
 +
 +<code bash>
 +^(?!.*\.html$)[/\w\.-]+$
 +</code>
 +
 +or, another use of a lookahead assertion:
 +
 +<code bash>
 +/((?!\.html$)[/\w.-])+/
 +</code>
 +
 +<WRAP info>
 +**NOTE:**
 +
 +  * **(** - Start a group for the purposes of repeating.
 +  * **(?!\.html$)** - Negative lookahead assertion for the pattern **/\.html$/**.
 +  * **[/\w.-]** - The pattern for matching a URL character.
 +  * **)+** - Repeat the group.
 +
 +
 +To force it to match the entire string, anchor the entire pattern with **^** at the start and **$** at the end; otherwise it is free to only match a portion of the string. With this change, it becomes:
 +
 +<code bash>
 +/^((?!\.html$)[/\w.-])+$/
 +</code>
 +
 +
 +</WRAP>
 +
 +
 +----
 +
 +===== References =====
 +
 +https://www.regular-expressions.info/lookaround.html
  
regex/all_text_not_containing.1748331848.txt.gz · Last modified: 2025/05/27 07:44 by peter

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki